我正在使用infinite-scroll,这是一个通过ajax获取新网页来取代标准分页的插件。
这个问题是jquery函数没有注册新帖子,导致这样的功能:
jQuery(document).ready(function($) {
$('.vote-a, .vote-b').click(function() {
//do stuff
});
$('.vote-b').click(function() {
//do other stuff
});
});
停止运行。要解决此问题,该插件会提供回调功能,并且您可以在加载新页面时包含您希望调用的代码。
我做了什么只是将代码放在上面。 有效,但我最终得到了几个相同代码的实例。
所以问题是如何解决这个问题的?我能想到的一种方法是在每次回调时销毁/删除旧实例。
或以某种方式重新启动/重启/调用该功能。
答案 0 :(得分:1)
您可以在根级别注册点击事件,而不是通过查找单个元素并为其分配点击事件。
https://api.jquery.com/on/ 和旧的方法 https://api.jquery.com/live/
jQuery(document).ready(function($) {
$(document).on('click', '.vote-a, .vote-b', function() {
//do stuff
});
$(document).on('click', '.vote-b', function() {
//do other stuff
});
});