在以下代码中,CLICK()方法只运行一次:
<!DOCTYPE html>
<html>
<head>
<script src="jquery-1.10.2.min.js"></script>
<script>
$(function(){
var arr = ["test1", "test2", "test3"];
var i=0;
$("#btn").click( function () {
while(arr[i])
alert(arr[i++]);
});
});
</script>
</head>
<body>
<div id="btn">Click Me</div>
</body>
</html>
问题是什么? 我读了所有其他科目但没有帮助。
非常感谢。
答案 0 :(得分:3)
它确实: - 只需将您的i
重置为0.在您的处理程序中,条件第二次失败,因为您的i
从之前的执行变为array.length
并且失败,因为有在你的情况下arr[array.length]
即没有项目。
$("#btn").click(function () {
while(arr[i])
alert(arr[i++]);
i = 0; //here reset it
});
或者只是将其移动到函数的范围内。
$("#btn").click(function () {
var i = 0;
while(arr[i])
alert(arr[i++]);
});
答案 1 :(得分:1)
点击方法会在每次点击时运行,但在第一次点击后,它不再进入while循环,因为i === 3
。
答案 2 :(得分:0)
试试这个:
$("#btn").on('click', function () {
while(arr[i])
alert(arr[i++]);
});
答案 3 :(得分:0)
我认为问题是由变量i引起的,请将i移动到单击功能,例如:
$("#btn").bind('click', function(){
var i = 0;
while(arr[i])
alert(arr[i++]);
});