我想为我的网站创建一个 jquery 插件。
我将创建事件,我想知道处理处理程序的最佳方式是什么。
我担心的是,当 DOM html 由于 ajax 查询而发生变化时,我们必须保持事件绑定。经过一些研究,我发现最好的方法是使用 jquery 中可用的 .on() 函数。
这是我尝试过的:
jQuery.fn.wtpicker = function ( params ) {
var currentSelector = $(this);
$(document).on('click', currentSelector, function(event) {
alert('test');
});
return this;
}
但它不起作用......
live() 已弃用,如果使用 ajax 查询动态更改 HTML,经典绑定 d.click() 将不起作用……好吧,我迷路了。
我应该在第二个参数中指定选择器的 dom,例如“#whatever div.myclass”。但由于它是一个插件,我不知道它。
为了使它工作,我不得不写:
jQuery.fn.wtpicker = function ( params ) {
var currentSelector = $(this);
$(document).on('click', '#whatever div.myclass' , function(event) {
alert('test');
});
return this;
}
但是如果我不想要另一个选择器,它就不是很有效。
是否可以检索插件本身中使用的女巫 DOM 选择器?我不想通过 dom 传递参数。这真的不是一个好方法。
非常感谢