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

为什么打不开新窗口

<!DOCTYPE html>

<html>

 <head>

  <title> new document </title>  

  <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>   

  <script type="text/javascript">  

  function openWindow(){

         var x = confirm("是否打开一个网页");

    // 新窗口打开时弹出确认框,是否打开

           if(a==true){

              var b =prompt("请输入你要打开的网址","http://www.imooc.com/");

           }

              if(b!=null){

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

         else{

             alert("拜拜");

         }

     }

      else{

      alert("拜拜");

   }

  

  }

    // 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/


    //打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。

    

    

  </script> 

 </head> 

 <body> 

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

 </body>

</html>


正在回答

2 回答

 var x = confirm("是否打开一个网页")这句comfirm()赋值给了变量x;

 if(a==true){var b =prompt("请输入你要打开的网址","http://www.imooc.com/");}你这里的判断的时候应该用变量x,而不是用a,因为confirm返回的是true和false,所以x被赋值之后是true或者false,你这里是要判断x是不是true,如果等于就执行代码块。

 if(b!=null){window.open("http://www.imooc.com/","_blank","width=400,height=500,menubar=no,toolbar=no") else{ alert("拜拜");} 这里用b!=null来判断是否为空值,可能会出现判断无效的情况,因为有可能默认是空字符所以可以用b!=""来判断

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

你好,我刚刚试了一下

首先, var x = confirm("是否打开一个网页"); 这里只是赋值,这样不算是使用,应该把 confirm前面的删掉,然后

if(a==true){

              var b =prompt("请输入你要打开的网址","http://www.imooc.com/");

           }

这里a没有赋值,a的初始值默认是随机还是0来着,我不知道,但绝不会等于true,另外因为a没有赋值,发生报错,就没执行后面的语句了,还有后面的,这里也错了,b的赋值在上一个if 里有效,这个if 里b就失效了,也报错

 if(b!=null){

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

         else{

             alert("拜拜");

         }

     }


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

举报

0/150
提交
取消
JavaScript入门篇
  • 参与学习       739957    人
  • 解答问题       9566    个

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

进入课程

为什么打不开新窗口

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