老师,我有个疑问
来源: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就是改变之后的值。
自己可以输出测试下,祝学习愉快!