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

Javascript入门篇编程练习,最后运行效果有个bug,不输入http://就会打不开要打开的网址是怎么回事?

<!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 con = confirm("是否打开新窗口");
        var pro;
        if(con == true){
            pro = prompt("请输入要打开的网址:","http://www.imooc.com/");
            if(pro != null){
            window.open(pro,"_blank","width = 400px,height = 500px");
            }
        }
    }
    // 新窗口打开时弹出确认框,是否打开

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

    //打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。   
  </script> 
 </head> 
 <body> 
 <input type="button" value="新窗口打开网站" onclick="openWindow()" /> 
 </body>
</html>

出现bug的情况:
例如,我要打开百度,在出现输入对话框是输入能正常打开
输入www.baidu.com打开就会错误

正在回答

2 回答

楼上说得很对!不仅在慕课编辑环境下,你在其他任何地方不写http:// 都会打不开网址。你试一下输入“www.imooc.com”,慕课环境下输入慕课的网址,不加http://也会打不开。

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

chwech 提问者

所以如何解决此bug?很多人输入网址的时候习惯不输入http://前缀
2016-05-01 回复 有任何疑惑可以回复我~
#2

解集SS 回复 chwech 提问者

var a=String1.split(String2),效果是分割字符串。比如String1是"1234567",String2是"3",那么数组a就是["12","4567"]。可以是: var answer=prompt("输入网址:",""); var tag=answer.split("://");//检测有没有输入://,如果没有,tag的值为"",即空字符串 if(tag!=""||tag!=null){//tag的值不为空 window.open(answer); }else{ window.open("http://"+answer); }
2016-05-02 回复 有任何疑惑可以回复我~

因为你在代码里写网址,默认是在同一目录下,所以其实打开的是http://www.imooc.com/code/www.baidu.com,自然打不开 加一个http://是告诉浏览器协议类型和地址,就不会404了

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

chwech 提问者

所以代码是没问题的是吗?只是在慕课编辑环境出现的bug?
2016-05-01 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Javascript入门篇编程练习,最后运行效果有个bug,不输入http://就会打不开要打开的网址是怎么回事?

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