2012-11-18 24 views
0
<div id="element1" onclick="func();">1</div> 
<div id="element2" onclick="func();">2</div> 
<div id="element3" onclick="func();">3</div> 
<div id="element4" onclick="func();">4</div> 
<div id="element5" onclick="func();">5</div> 
<div id="element6" onclick="func();">6</div> 
<div id="element7" onclick="func();">7</div> 
<div id="element8" onclick="func();">8</div> 

当用户单击任何div时,func()函数将工作并且计数器计算处理func()函数的次数。例如2次(我们确定数字)过程func()函数比用户单击任何div时再次函数将不起作用。我如何用jQuery来做到这一点?如何计算在jquery中处理函数的次数

回答

3

使用全局变量来跟踪函数被调用的次数。

var counter = 0; 

function func() { 

    counter++; 
    if (counter > 2) return; 

    // do other fn stuff 
} 

在一个稍微相关的说明,还有使用jQuery的时候结合多个单击处理一个更好的办法:

$('div[id^="element"]').click(func); 

当然,它并没有真正因为return问题将停止执行,但如果你不想func在所有被调用(也就是说,如果你想完全消除click事件),然后你可以简单地做(如果您对上面的变化):

$('div[id^="element"]').unbind('click'); 

这将代替代码第一部分中的return声明。

+0

非常感谢,对我非常有用。问题解决谢谢谢谢 – regxcode

相关问题