Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery$.extend没有覆盖我的设置值_Jquery_Frameworks - Fatal编程技术网

jQuery$.extend没有覆盖我的设置值

jQuery$.extend没有覆盖我的设置值,jquery,frameworks,Jquery,Frameworks,我正在尝试编写自己的框架,但我在覆盖项目的默认设置时遇到了一个问题。起初我认为使用循环将defaultSettings替换为settings,但后来我找到了$.extend,这应该更容易。但是,我似乎无法用我的设置覆盖默认设置 这些是默认设置 var defaultSettings = { authenticFilter: 'off', randomizeHeaders: {state: 'off', topHeaderElement: 'h1', bottomHeaderEle

我正在尝试编写自己的框架,但我在覆盖项目的默认设置时遇到了一个问题。起初我认为使用循环将defaultSettings替换为settings,但后来我找到了$.extend,这应该更容易。但是,我似乎无法用我的设置覆盖默认设置

这些是默认设置

var defaultSettings = {
    authenticFilter: 'off',
    randomizeHeaders: {state: 'off', topHeaderElement: 'h1', bottomHeaderElement: 'h2', topHeaderClass: ["hl1", "hl3"], bottomHeaderClass: ["hl4", "hl2"]}, 
    hoverFilter: 'off', 
}
var settings = {
    authenticFilter: 'on', 
    randomizeHeaders: {state: 'on', topHeaderElement: 'h1', bottomHeaderElement: 'h2', topHeaderClass: ["hl1", "hl3"], bottomHeaderClass: ["hl4", "hl2"]}, 
    hoverFilter: 'on'
};
这些是应该覆盖默认设置的设置

var defaultSettings = {
    authenticFilter: 'off',
    randomizeHeaders: {state: 'off', topHeaderElement: 'h1', bottomHeaderElement: 'h2', topHeaderClass: ["hl1", "hl3"], bottomHeaderClass: ["hl4", "hl2"]}, 
    hoverFilter: 'off', 
}
var settings = {
    authenticFilter: 'on', 
    randomizeHeaders: {state: 'on', topHeaderElement: 'h1', bottomHeaderElement: 'h2', topHeaderClass: ["hl1", "hl3"], bottomHeaderClass: ["hl4", "hl2"]}, 
    hoverFilter: 'on'
};
我都试过了

var options = $.extend(true, defaultSettings , settings);

但这两种方法都不起作用,我的代码默认为defaultSettings。如果是这样的话,为什么这不起作用

var defaultSettings={
authenticFilter:“关闭”,
随机化标题:{state:'off',topHeaderElement:'h1',bottomHeaderElement:'h2',topHeaderClass:[“hl1”,“hl3”],bottomHeaderClass:[“hl4”,“hl2”]},
悬停过滤器:“关闭”,
}
变量设置={
authenticFilter:'on',
随机化标题:{状态:'on',topHeaderElement:'h1',bottomHeaderElement:'h2',topHeaderClass:[“hl1”,“hl3”],bottomHeaderClass:[“hl4”,“hl2”],
悬停过滤器:“打开”
};
var options=$.extend(true、defaultSettings、settings);
console.log(选项)

工作正常
options
gets
hoverFilter:'on'
,等等。您能否显示重现问题的精确代码序列,最好是在问题中的一个片段中?我已经添加了代码片段,但不知怎的,它在这里工作。问题可能是我传递了“设置”,比如“var Papery=function(selector,settings)”,我通过删除“selector”修复了它,它实际上什么都没做。谢谢你的帮助!