老师,我有个疑问
来源:1-14 编程练习
秋之枫华
2019-10-12 18:06:13
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>window.open编程练习</title>
</head>
<body>
<input type="button" value="打开慕课网" id="open">
<input type="button" value="关闭慕课网" id="close">
<script type="text/javascript">
//获取两个按钮
var off=document.getElementById("close"),
on=document.getElementById("open");
//定义一个变量,用于保存开的的“慕课网”窗口,关闭事件中通过此变量把他关闭
var imooc;
//给两个按钮绑定鼠标单击事件
on.onclick=function(){
imooc=window.open("http://www.imooc.com");
}
off.onclick=function(){
imooc.close();
}
</script>
</body>
</html>var imooc是我定义的一个全局变量,在on.onclick事件中,imooc被赋值了,为什么值会传递到off.onclick这个事件中呢?这两个事件不是相互独立的么。也就是说我在A函数中给某个全局变量n赋值为m,那么这个n在其他函数中的值就是m了是吗?
1回答
好帮手慕星星
2019-10-12
同学你好,
代码实现效果正确,很棒哦!
对于imooc变量理解的没有问题,两个事件是相互独立的,但是imooc变量是全局的,在哪里都可以使用,所以第二个事件中可以直接用imooc,如果之前有赋值的话,imooc就是改变之后的值。
自己可以输出测试下,祝学习愉快!