Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.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
Javascript jqueryui命名回调_Javascript_Jquery Ui - Fatal编程技术网

Javascript jqueryui命名回调

Javascript jqueryui命名回调,javascript,jquery-ui,Javascript,Jquery Ui,如果在设置滑块时使用命名函数,为什么不起作用 这项工作: $( "#slider" ).slider({ change: function (event, ui) { sliderCb (event,ui) } }); 使用此选项不会 $( "#slider" ).slider({ change: sliderCb (event, ui) }); 我想您应该遵循这些示例,但我想知道为什么这不起作用,这与函数调用/定义的上下文有关吗?如果不使用匿

如果在设置滑块时使用命名函数,为什么不起作用

这项工作:

$( "#slider" ).slider({ 
    change: function (event, ui) { 
        sliderCb (event,ui) 
    } 
});
使用此选项不会

$( "#slider" ).slider({
    change: sliderCb (event, ui)
});
我想您应该遵循这些示例,但我想知道为什么这不起作用,这与函数调用/定义的上下文有关吗?如果不使用匿名函数,你怎么能做到这一点?或者我找错了方向了吗


Simon

第一个示例是将匿名函数声明分配给change属性。第二个示例是执行一个命名函数,并将返回值赋给change属性

您可以很好地分配命名函数,只需稍微偏离语法即可:

var sliderCb = function (event, ui) {
    ...
};

$( "#slider" ).slider({change: sliderCb });

请注意,
sliderCb
在本例中从技术上讲不是一个命名函数,但这是另一个问题…

是否应该使用
$(“#slider”).slider({change:sliderCb}),发布的语法不正确OK我猜对象文本中的f()将调用该函数。干杯:-)我完全走错了路!它是有效的…@SimonParker correct,如果没有
function
关键字将其作为声明,解释器会认为您正在执行一个函数,而不是声明要接受的参数。