我将元素绑定到插件。然后,我通过AJAX生成更多元素并在回调时重新绑定插件。
jQuery会重新绑定以前元素的自定义插件吗?有更有效的解决方案吗?谢谢你的帮助。
$('.class').plugin();
$.post(url, function() {
// add more .class elements.
$('.class').plugin(); // is this efficient?
});
答案 0 :(得分:2)
你的插件应该为已经被插件激活的元素添加一个类或者.data缓存项。然后在插件内部,如果元素已被激活,则可以忽略该元素。
另一种方法是从ajax调用返回的片段中选择元素。
$('.class').plugin();
$.post(url, function(response) {
// add more .class elements.
$(response).find('.class').plugin();
});