您不应该获得10次点击。您可以将点击事件绑定到类上,但是触发事件的上下文是个别元素,因此如果您有一些标记看起来像这样:
<p>
<a href="#" class="clickItem">Liked?</a>
<br />
<a href="#" class="clickItem">Liked?</a>
<br />
<a href="#" class="clickItem">Liked?</a>
<br />
<a href="#" class="clickItem">Liked?</a>
</p>
然后,当每个链接被点击时,将链接文本设置为“已赞!”即可使它起作用:
$(document).on("click", ".clickItem", function (ev) {
$(this).text("Liked!");
});
你调试过代码了吗?你确定你一次性获取到了10个点击吗?
将点击事件绑定到类是更好的解决方案,但如果您在项目本身或类本身上使用它,它实际上可能会被多次触发!
因此,您应该这样做,它只会触发一次:
$('.commentLikeLink').one('click', function(event) {// 在这里执行操作}
$(document).on("click", ".commentLikeLink", function (ev) {
//do things here
});
我之前也遇到过这个问题,当时是不小心在页面中多次包含了相同的.click脚本函数。请确保您的JavaScript只被包含一次。