嘿,伙计们开始慢慢地了解JavaScript,只是想知道我在这段代码中出错了。
我希望“banner”div能够在两个小时之间轻松地在你好和再见之间轻弹。
我在某个地方出错只是说你好(打勾总是0)
任何得到极大赞赏的帮助
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js" > </script>
</head>
<body>
<div id="banner"></div>
<script>
var tick = 0
$(document).ready(
setInterval(change(),2000)
)
function change(){
if(tick == 0){
document.getElementById('banner').innerHTML = "hello"
tick = 1
}
else{
document.getElementById('banner').innerHTML = "bye"
tick = 0;
}
}
</script>
</body>
</html>
答案 0 :(得分:1)
您正在调用change
函数(以便它立即运行,结果传递给setInterval
),而不是将对change
函数的引用传递给setInterval()
函数(以便setInterval
可以在正确的时间调用change
函数)。
尝试此操作(将引用传递给change
至setInterval
)
setInterval(change,2000)
而不是此(调用change
并将结果传递给setInterval
)
setInterval(change(),2000)
这是一个小提琴:http://jsfiddle.net/5eLktrdf/