<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<div id="we" style="width:100px; height:100px; position:absolute; top:0; left:0; background:red;"></div>
<br/><br/><br/><br/><br/><br/><br/>
<input type="button" value="点击A" onclick="showA()"/>
<input type="button" value="点击B" onclick="showB()"/>
</body>
<script type="text/javascript">
var a=0;
function move(){
a=a+30;
document.getElementById('we').style.left=a+'px';
}
function showA(){
timer=window.setInterval('move()',200);
}
function showB(){
window.clearInterval(timer);
}
</script>
</html>
timer=setInterva在showA()
这个函数里,window.clearInterval在showB
这个函数里,
点击showA(),div盒子开始滑动,
为什么点击showB可以令showA里的timer停止?
不用var申明的变量都是window作用域下的,所以你的showB可以引用到变量timer变量,如果是下面那样就没办法引用到了,只能在showA里面使用
function showA(){
var timer=window.setInterval('move()',200);
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。