我正在处理产品详情页面,更多产品已加载infinite scroll 问题是当新页面加载时,当用户点击"添加到购物车"时,加载页面上的点击事件上的jQuery将不会执行。如果它加载了jquery load(),该脚本将起作用。但无限卷轴正在使用其他我不知道的东西。
$(document).ready(function() {
jQuery_1_6_1('#mycontent').infinitescroll({
navSelector: "#mynext:last",
nextSelector: "#mynext:last",
itemSelector: "#mycontent",
debug: false,
dataType: 'html',
maxPage: <?php echo $pages_load;?>,
path: function(index) {
return "pages/index" + index + ".html";
}
// appendCallback : false, // USE FOR PREPENDING
}, function(newElements, data, url) {
});
});
答案 0 :(得分:2)
从我的评论中:只需使用附加到文档的委托事件处理程序,在启动时加载一次,以处理click事件。它们仍将触发稍后加载的元素。
假设您添加到购物车按钮的类别为“addtocart”,您可以执行以下操作:
$(document).on('click', '.addtocart', function(){
// handle click here
});
它通过委托监听祖先元素的事件(例如document
),然后将jquery选择器应用于气泡链中的元素,然后将事件函数应用于导致事件
委派事件的结果是元素不需要在事件注册时存在,而只在事件时间存在。