尝试使用jQuery,我遇到了一些我无法理解的示例代码。它指的是绑定方法及其使用方式。这是
$('textControl').bind(($.browser.opera ? 'keypress', 'keydown') + '.autocomplete', function(event) { code...});
我理解选择按键或keydown,但我不明白为什么他们在偶数处理程序名称上附加.autocomplete?
如果有人可以放弃一些很棒的光线
由于
答案 0 :(得分:11)
让我一步一步解释。
$('textControl').bind(
绑定到textControl
($.browser.opera ? 'keypress', 'keydown')
如果浏览器是opera,则返回keypress的三级表达式,否则返回keydown。
'.autocomplete'
自动完成是jQuery插件添加到keypress事件对象的自定义事件。所以基本上他们只是将它分组以使其更有条理,但它是一个自定义命名空间事件。
所以实际上,事件附加到keypress / keydown,但您可以使用命名空间绑定和取消绑定,从而保持工作空间的有序化。
答案 1 :(得分:5)
这是jQuery的一个名为 Namespaced Evenets 的功能,它经常在插件中使用,因为它允许一个简单快捷的方式让插件只能操纵它自己的事件。