有没有办法将变量分配给html中的每个元素都是唯一的

时间:2011-05-27 14:48:57

标签: javascript

我在javascript中有变量“count”。 function click(e){ var count=0; }我需要将此计数变量唯一地分配给每个标签。<label id="1" onclick="click(this)>a</label> <label id="2" onclick=click(this)>b</label>

当我点击标签时,它会调用函数click()。那里的count变量不应该是全局的。 label id = 1 call的count变量应该与label id = 2 call的值不同。

即label1.count = 1 label2.count = 2;

有没有办法像这样做?????

1 个答案:

答案 0 :(得分:0)

简单的方法是在HTML元素上设置任意属性。这是跨浏览器,虽然它不是任何标准AFAIK的一部分。

function click(e){
    this.clickCount = this.clickCount ? this.clickCount + 1 : 1;
}

如果你只是想知道它是否以某种切换方式被点击,你可以设置一个布尔属性:

function click(e) {
    this.clicked = !this.clicked;
}

如果您愿意使用jQuery,使用data方法可能会更加美观:

$('label').click(function(e) {
    $(this).data('clicked', !$(this).data('clicked'));
});