0
考虑以下两个代码示例:JS函数封装
// Example 1
$('#myButton').click(function() {
alert('I was clicked');
});
// Example 2
$('#myButton').click(
alert('I was clicked');
);
为什么要注意,它例如2不工作?
考虑以下两个代码示例:JS函数封装
// Example 1
$('#myButton').click(function() {
alert('I was clicked');
});
// Example 2
$('#myButton').click(
alert('I was clicked');
);
为什么要注意,它例如2不工作?
因为传递函数的引用而另一个传递调用alert函数的**结果**。 jQuery.click()需要一个函数引用作为它的参数,它在[API文档](http://api.jquery.com/click/)中引用为_handler_。 – jahroy 2013-02-25 22:48:15
@jahroy看看我看到的文档.click(handler(eventObject))我一直被表示参数时使用的不同语法所困惑。看起来每个语言或个人都希望以不同的方式做到这一点。 – Rigil 2013-02-25 23:03:04
是的,文档对于JavaScript和jQuery来说不像Java和C#那样一致......我认为当语言是强类型的时候它会容易得多!注意_handler_参数旁边的注释:“_每次触发事件时执行的函数._” – jahroy 2013-02-25 23:09:12