通过JS为元素添加点击量

时间:2015-01-14 10:18:04

标签: javascript jquery

我有一个ul-list,含有不可预测的li元素(2到8之间的任何东西)。 我想使用这些li元素进行投票并显示点击元素本身的投票数量。我会使用类似的东西来捕捉点击次数:

$('#result li').click(function() {
$('#result li').html(function(i, val) { return val*1+1 });
});

但是,我怎么会需要构建我的html以确定哪个元素被点击了?

非常感谢。

2 个答案:

答案 0 :(得分:0)

使用$(this)

$('#result li').click(function() {
    $(this).html('I am clicked'); // of course, set the proper value here
});

见这里:



    $('#result li').click(function() {
        $(this).html(parseInt($(this).html(), 10) + 1);
    });

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="result">
  <li>0</li>
  <li>4</li>
  <li>5</li>
  <li>2</li>
  <li>88</li>
  </ul>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您希望使用点击事件上下文来获取this这是个别元素。您可以直接使用节点,也可以转换为JQuery元素$(this)

如果您想要跟踪每个元素,请单击您可以绑定到其上下文并设置其单击的值。

$('#result li').click(function(){
    this.clicked = this.clicked ? this.clicked + 1 : 1;
    $(this).html(this.clicked);
});

http://jsfiddle.net/su14hjc0/

这意味着您还可以在其他地方引用点击的值。

console.log($('#result li:eq(1)')[0].clicked);