為什么初始化就彈出對話框?
<!DOCTYPE?html>
<html>
?<head>
??<title>?new?document?</title>??
??<meta?http-equiv="Content-Type"?content="text/html;?charset=gbk"/>???
??<script?type="text/javascript">
???function?openwindow()
???????{
???????????window.open('http://www.xianlaiwan.cn/','null','width=400,height=500,menubar=no,toolbar=no')
???????}
????var?mymessage=confirm("是否打開新窗口?");
????if(mymessage==true)
????{
????????openwindow()
????}
????else
????{
????????document.write("您取消了操作");
????}
?????
????//?新窗口打開時彈出確認框,是否打開
????//?通過輸入對話框,確定打開的網址,默認為?http://www.xianlaiwan.cn/
????//打開的窗口要求,寬400像素,高500像素,無菜單欄、無工具欄。?
??
??</script>?
?</head>?
?<body>?
??<input?type="button"?value="新窗口打開網站"?onclick="openWindow()"?/>?
?</body>
</html>第一次提交后自己彈出的提示框,點完確認后閃一下就關了,第二次去點按鈕點擊確認完才開的網頁?
2018-08-02
????首先,HTML語句是順序執行的。你先寫了完整的openwindow函數,中間if內又引用了openwindow(),所以點提交后,還沒有點”新窗口打開網站“按鈕就直接自動跳轉到提示框,使最后的onclick=
"openWindow()"語句沒來得及執行。????其次,至于你說的:第一次提交后自己彈出的提示框,點完確認后閃一下就關了,第二次去點按鈕點擊確認完才開的網頁?????我測試結果是:第一次提交并確認后能正常打開新窗口,如果不把新窗口關閉就直接第二次提交并確認,是不會再打開另一個新窗口的,關閉第一個窗口后才會打開第二個。2018-08-03
????你先定義了完整的函數,if內的就只能改成window.open(.....)才不會調用函數,但是這樣一來你的代碼就完全亂了,函數的定義就顯得有點雞肋。按照你的思路,我能力有限,想不到怎么改。 ????下面是我寫的一個代碼例子,你可以看一下。我的思路是將所有的語句都包括在openwindow()函數內,即<script>到</script>內的內容都是函數的定義,最后的再用onclick="openWindow()引用函數就行了。 <!DOCTYPE?HTML> <html> <head> <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/> <title>openwindow</title> ??<script?type="text/javascript"> ??function?openwindow(){ ????var?open=confirm("確定要打開新窗口嗎?")?; ????if(open==true) ????{ ????????var?net; ????????net=prompt("請輸入你想打開的網址:",)?; ????????//括號里面的逗號不能少,不然輸入的網址不能正常賦值給net??梢暂斎肴我饽阆朐L問的網址 ????????//逗號后加"http://www.xianlaiwan.cn/"的話,就會默認要打開的新窗口是http://www.xianlaiwan.cn ????????if(net!=null) ????????{ ?????????window.open(net,'_blank','width=400,heigh=500,menubar=no,toolbar=no'); ????????//window.open()內的net不用單引號括起來 ????????} ????????else ????????{ ????????//可考慮用正則表達式判斷網址是否正確 ????????alert("你輸入的網址錯誤"); ????????} ????} ????else ????{ ????????window.close(); ????} ??}???? ??</script> </head> <body> ????<input?name="button"?type="button"?onClick="openwindow()"?value="點擊我,打開新窗口"?/> </body> </html>