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

为什么我改成别的网址,却还是显示慕课的网页啊,我浏览器的问题?

    function openWindow()

    {

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

        if(str){

            var str1=prompt("请输入网址:","http://www.imooc.com/")

            if(str1){

            window.open('str1','_blank','width=400,height=500,menubar=no,toolbar=no');

            }

        }

        } 



正在回答

7 回答

你的str1在if语句中没有给判断条件。

  对于if来说,只要你点了确定,它就会默认去执行,而不会进行判断。

如果你改成if(str1==1),此时点了确定后,if会判断你输入的值是不是1,如果是1,就会继续执行if语句,也就是打开慕课网。如果不是1,那机会执行else语句。

 var url = "http://www.imooc.com";
                var r = prompt("请输入网址",url); 
                  if (r==url) 
                  {
                      window.open(url,'_blank','width=400','height=500','menubar=no','toolbar=no');
                      }
                  else
                  { 
                      window.open(r,'_blank','width=400','height=500','menubar=no','toolbar=no');
                      }


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

mistyrain98 提问者

你的确实可行,我研究一下吧,谢谢
2016-03-26 回复 有任何疑惑可以回复我~
#2

mistyrain98 提问者

感觉浏览器有问题,我现在执行我的代码,也能出现我想要的结果,不需要更改
2016-03-26 回复 有任何疑惑可以回复我~
#3

mistyrain98 提问者

r==url ?你这判断有问题吧?能对等?
2016-03-26 回复 有任何疑惑可以回复我~
#4

Hot_shit

上边的url是变量啊。和r==http://www.imcoo.com是一样的,因为之前有url=http://www.imcoo.com
2016-03-26 回复 有任何疑惑可以回复我~
查看1条回复

<!DOCTYPE html>

<html>

 <head>

  <title> new document </title>  

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

  <script type="text/javascript">  

      function openWindow(){

        var  boolean1 = confirm("是否打开新网站");

        if (boolean1==true) {

          var string1 = prompt("请您输入要打开的网站","http://www.imooc.com");

          var string2 = "http://";

          var string3 = string1.contains(string2);

            if (string3==true) {

              window.open(string1);

            }else{

              window.open("http://"+string1);

            }

          

        }

      }

    

  </script> 

 </head> 

 <body> 

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

 </body>

</html>


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

沐风而行

帮我看看我这个 这个有问题
2016-03-26 回复 有任何疑惑可以回复我~
#2

mistyrain98 提问者

没必要这样写呀,要缩减代码啊,减少冗余度,prompt(str1,str2);str2可以直接改嘛,你的string2string3,else都没必要,可以删掉的,你这样并不会给顾客带来什么方便性
2016-03-26 回复 有任何疑惑可以回复我~
    function openWindow()
    {
        var str=confirm("是否打开?");
        if(str)
        {
            var str1=prompt("请输入网址:","http://www.imooc.com/")
            window.open(str1,'_blank','width=400,height=500,menubar=no,toolbar=no');
        }
        }

应该写成这样

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

我细细研究了下,我的调试成功了,你的我也帮你修改了下(仅供参考)

   function openWindow()

    {

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

        if(str==true){

            var str1=prompt("请输入网址:","http://www.imooc.com/")

           window.open(str1,['_blank'],['width=400','height=500','menubar=no','toolbar=no']);

        }

        else{

        }

        } 

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


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

干枯的海绵

主要注意点: 1.if判断条件应该是真或者假,因此if(str)是有问题的,应该改为if(str==true); 2.语义逻辑轮乱,看不懂你在window.open上面一行的if作用,这个例子中此处不需要if; 3.前面基础不扎实,window.open()语法没有掌握,建议在看下前面小结中window.open()语法,结合我给你修改的代码,修改下你上面的代码; 4.多出半个花括号“}”请细心检查; 希望能帮到你,一起加油
2016-03-26 回复 有任何疑惑可以回复我~
#2

mistyrain98 提问者 回复 干枯的海绵

if(str)和if(str==true)一样呀,应该写if(str!=null)更好吧,prompt(str1,str2); 判断 str2 还是有必要的,毕竟下面要用到 str2 window.open()语法没问题啊,没有[],width,heigh……k可以在一个‘ ’里的,{ }没问题哦
2016-03-26 回复 有任何疑惑可以回复我~
#3

mistyrain98 提问者 回复 干枯的海绵

原来分数只能给一次,抱歉啦,你这么认真,给你个拥抱吧,加油哟
2016-03-26 回复 有任何疑惑可以回复我~

同问,请问你这个问题的原因找到没?

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

加不加好像效果都一样,输入其它网址时为啥还是打开imooc的网站呀,prompt(str1,str2),str2的值没有被改变?


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

open里面,str1就是网址了,不用加单引号

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

举报

0/150
提交
取消

为什么我改成别的网址,却还是显示慕课的网页啊,我浏览器的问题?

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