我已经做了一些搜索文档,并在网上花了一段时间,但无法找到解决方案!我希望警报告诉我单击.thumb时每个()的迭代次数.
EG:有6个.thumb我点击3号,浏览器弹出3!
实际发生的是无论点击哪个.thumb,弹出6.
var counter = 1;
$('.thumb').each(function () {
$(this).click(function () {
alert (counter);
});
counter++;
});
Run Code Online (Sandbox Code Playgroud)
感谢任何帮助.
Nic*_*ver 69
那是因为你counter
为所有 click
处理程序共享同一个变量,它就是它在循环结束时的最终结果.相反,使用传入循环的.each()
那个(已存在的那个的索引参数),如下所示:
$('.thumb').each(function (i) {
$(this).click(function () {
alert (i+1); //index starts with 0, so add 1 if you want 1 first
});
});
Run Code Online (Sandbox Code Playgroud)