卡兰尼克
2016-10-15 10:47
<!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 myname
myname=confirm("do you want to open this web?" );
if(myname=true)
{var mybuzhidao
mybuzhidao=prompt('http://wwww.imooc.com/');
if(mybuzhidao!=null)
{ mybuzhidao.open("http://wwww.imooc.com/","_blank","width=400,height=500,menubar=no,toolbar=no");}
else
{alert("promot的再见")}
}
else
{ alert("第一个if的再见2")}
}
</script>
</head>
<body>
<input type="button" value="新窗口打开网站" onclick="openWindow()" />
</body>
</html>
出现do you want to open this web的时候点取消但是还是会继续出现第二个prompt的提示框
正常的情况下不是应该直接现实else中的内容吗。。。
好晕啊 不知道哪里做错了
555555为什么提问还要积分啊。。心塞
<!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 myname myname=confirm("do you want to open this web?" ); if(myname=true){ var mybuzhidao mybuzhidao=prompt('http://wwww.imooc.com/'); if(mybuzhidao!=null){ mybuzhidao.open("http://wwww.imooc.com/","_blank","width=400,height=500,menubar=no,toolbar=no"); }else{ alert("promot的再见") } }else{ alert("第一个if的再见2") } } </script> </head> <body> <input type="button" value="新窗口打开网站" onclick="openWindow()" /> </body> </html>
首先整理下格式,方便阅读。或者应该说,在敲代码的时候就需要注意格式,方便自己审查代码,一个程序员的基本素质。
下面加粗倾斜下划线,是你程序出错的主要原因。
1、var myname
var mybuzhidao
末尾没分号。虽然在JS里面,末尾无分号无伤大雅,但还是要记得写。以后踩一些【因为少个标点符号而出一些奇奇怪怪问题又找半天不知道代码哪出错】的坑,就会长记性了。另外不建议弄一些没意义的命名,初期练手代码量小。但如果养成习惯,后期代码量多的时候,没意义的命名加上无注释,你都不知道之前写的什么鬼。
2、if(myname=true)
【myname=true】 ? 你是想写 【myname==true】 吧。
一个= 是赋值,两个= 才是比较。(虽然这里,myname本身就是一个true或者false的布尔型,不需要再做比较。直接写【if(myname)】就可以了。)
所以你这里,myname是恒为true的,所以这一层的if_else_,else是永远进不去的。
3、mybuzhidao=prompt('http://wwww.imooc.com/');
题目要求是,默认值为'http://www.imooc.com/'(你写的4个w是什么鬼!),应该把链接地址放在第二个参数,第一个参数是提示。比如这样
mybuzhidao=prompt("请输入网址:",'http://www.imooc.com/');
默认值意思是,你如果没有其他值,那就用这个了。
4、mybuzhidao.open("http://wwww.imooc.com/","_blank","width=400,height=500,menubar=no,toolbar=no");
你竟然没问【为什么浏览窗口没弹出来】。
让我自问自答一波。
弹得出来就有鬼了!!
mybuzhidao.open(...); 你的不知道 点 open 。。。。。。。。。。open毛线。 是【window.open(....)】你是要打开一个窗口,不是要打开【你的不知道】。
第一个参数,按照题意,是要prompt对话框输入的值,也就是你的变量mybuzhidao。默认值是prompt的默认值,不是让你写死一个地址在这(还他喵的是4个w的地址)。
改为:
window.open(mybuzhidao,"_blank","width=400,height=500,menubar=no,toolbar=no");
JavaScript入门篇
739817 学习 · 9566 问题
相似问题