为了账号安全,请及时绑定邮箱和手机立即绑定

请问我写的这个为什么只要一运行就自动弹出确认窗口了?而不是先点击按钮才打开?

var openWindow = confirm("是否打开?");

    if(openWindow == true)

 {window.open('http://www.imooc.com','_blank','width=400,height=500,menubar=no,toolbar=no');}

    else{}

正在回答

2 回答

你好,你写的这个一运行就自动弹出确认窗口的原因是:

当运行时,会自动加载html页面,所以,首先就会执行

var openWindow = confirm("是否打开?");

如果要先点击按钮才打开,你首先要定义一个onclick事件,只有当点击的时候,才执行这个函数。因为,练习题里面,input已经给了一个onclick事件,

	  <input type="button" value="新窗口打开网站" onclick="openWindow()" />

openWindow(),所以只需要在写一个函数就可以了。正确写法是:

    function openWindow(){
        var char = confirm('确定打开新窗口吗?');
        if (char == true){
            var mychar = prompt('请输入打开的网址','http://www.imooc.com');
            window.open(mychar,'_blank','width=400,height=500,toolbar=no');
            }
        }


1 回复 有任何疑惑可以回复我~
#1

未來Miral 提问者

非常感谢!
2016-10-20 回复 有任何疑惑可以回复我~

写在js里面的代码在运行的时候会直接生效,碰到函数会跳过,除非这个函数被触发;所以如果想要点击按钮才打开应该把这部分代码写在button绑定的函数里面,然后点击button时,触发绑定函数,执行里面的代码

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问我写的这个为什么只要一运行就自动弹出确认窗口了?而不是先点击按钮才打开?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信