javascript - jQuery:计算数百个元素的点击次数

标签 javascript jquery html

这是我在 SO 的第一个问题。基本上,我的页面上有大量元素,我想计算并显示用户单击每个元素的次数。但为此我需要为每个元素定义变量。 有没有更简单的方法?

对于一个元素:

 var counter = 0;
 $('.container').on("click", function(){
 counter = counter+1;
 $(this).find('.tag').html(counter);
 });

最佳答案

您可以存储data每个元素都会计算每个元素被点击的次数。

$(function(){
	$('.container').click(function(){
        if ($(this).data('count')) { // already been clicked
            $(this).data('count', $(this).data('count') + 1); // add one
        } else { // first click
            $(this).data('count', 1); // initialize the count
        }
        $(this).html($(this).data('count')); // show it
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<div class="container">container</div>
<div class="container">container</div>
<div class="container">container</div>
<div class="container">container</div>
<div class="container">container</div>
<div class="container">container</div>

关于javascript - jQuery:计算数百个元素的点击次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25959525/

相关文章:

Javascript:根据具有类的子元素中的值对列表进行排序

html - 选择带有 :nth-child 的嵌套元素

javascript - 必须手动启用 Electron 生成器桌面快捷方式图标

javascript - 附加装饰为 html 元素的内容不起作用

javascript - 使用 Object.create() 和 Object.assign() 创建对象有什么区别?

javascript - jQuery SQlite - 客户端存储

javascript - jQuery 数据表排序问题

html - 顶部导航元素未居中

javascript - 在 Samsung Smart TV 应用程序中通过 Remote 导航

javascript - 递归 setInterval() 连续运行