js中window.open方法的屬性介紹

代碼非常簡單:
<SCRIPT LANGUAGE="javascript">
<!--
window.open ('page.html')
-->
</SCRIPT>
因爲這是一段javascript代碼,所以它們應該放在<SCRIPT LANGUAGE ="javascript">標籤和</script>之間。<!--和-->是對一些版本低的瀏覽器起作用,在這些老瀏覽器中如果不支持javascript,不會將標籤中的代碼作爲文本顯示出來。
Window.open ('page.html')用於控制彈出新的窗口page.html,如果page.html不與主窗口在同一路徑下,前面應寫明路徑,絕對路徑(http://)和相對路徑(../)均可。
用單引號和雙引號都可以,只是不要混用。
這一段代碼可以加入HTML的任意位置,加入到<head>和</head>之間也可以,位置越靠前執行越早,尤其是頁面代碼較長時,又想使頁面早點彈出就儘量往前放。

【經過設置後的彈出窗口】
下面再說一說彈出窗口外觀的設置。只要再往上面的代碼中加一點東西就可以了。
我們來定製這個彈出窗口的外觀、尺寸大小、彈出位置以適應該頁面的具體情況。
<SCRIPT LANGUAGE="javascript:>
<!--
window.open ('page.html','newwindow','height=100,width=400,top=0,left=0,

toolbar=no,menubar=no,scrollbars=no,resizable=no,
location=no,status=no')
//寫成一行
-->
</SCRIPT>
參數解釋:
<SCRIPT LANGUAGE="javascript"> js腳本開始;
window.open 彈出新窗口的命令;
page.html 彈出新窗口的文件名;
newwindow 彈出窗口的名字(不是文件名),可用空 ″代替;
height=100 窗口高度;
top=0 窗口距離屏幕上方的像素值;
left=0 窗口距離屏幕左側的像素值;
toolbar=no 是否顯示工具欄,yes爲顯示;
menubar,scrollbars 表示菜單欄和滾動欄;
resizable=no 是否允許改變窗口大小,yes爲允許;
location=no 是否顯示地址欄,yes爲允許;
status=no 是否顯示狀態欄內的信息(通常是文件已經打開),yes爲允許;
</SCRIPT> js腳本結束。

【用函數控制彈出窗口】
下面是一個完整的代碼。
<html>
<head>
<script LANGUAGE="javascript">
<!--
function openwin(){
window.open("page.html","newwindow","height=100,width=400,toolbar=no,menubar=no,scrollbars=no,resizable=no,
location=no,status=no";)
//寫成一行
}
-->
</script>
</head>
<body onload="openwin()">
...任意的頁面內容...
</body>
</html>
這裏定義了一個函數openwin(),函數內容就是打開一個窗口。在調用它之前沒有任何用途。怎麼調用呢?
方法一:<body onload="openwen()"> 瀏覽器讀頁面時彈出窗口;
方法二:<body onunload="openwen()"> 瀏覽器離開頁面時彈出窗口;
方法三:用一個連接調用:<a href="#" onclick="openwin()">打開一個窗口</a>
注意:使用的"#"是虛連接。
方法四:用一個按鈕調用:<input type="button" onclick="openwin()" value="打開窗口">

【主窗口打開文件1.htm,同時彈出小窗口page.html】
將如下代碼加入主窗口<head>區:
<script language="javascript">
<!--
function openwin(){
window.open("page.html","","width=200,height=200" ;)
}
//-->
</script>
加入<body>區:<a href="http://www.5gcp.com" onclick="openwin()">open</a>即可。

【彈出的窗口之定時關閉控制】
下面我們再對彈出窗口進行一些控制,效果就更好了。如果我們再將一小段代碼加入彈出的頁面(注意是加入到page.html的HTML中,可不是主頁面中,否則…),讓它在10秒鐘後自動關閉是不是更酷了?
首先,將如下代碼加入page.html文件的<head>區:
<script language="javascript">
function closeit() {
setTimeout("self.close()",10000) //毫秒
}
</script>
然後,再用<body onload="closeit()">這一句話代替page.html中原有的<BODY>這一句就可以了。(這一句話千萬不要忘記寫啊!這一句的作用是調用關閉窗口的代碼,10秒鐘後就自行關閉該窗口。)

【在彈出窗口中加上一個關閉按鈕】
<form>
<INPUT TYPE='BUTTON' value='關閉' onClick='window.close()'>
</form>

原來的HTML標準中可以用
<a href="document.html" target="_blank"> 打開一個新窗口</a>

但新的HTML標準嚴格上是不允許的。可以採用以下代碼:

<a href="document.html" rel="external">打開一個新窗口</a>

javascript:

function externallinks() {
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName("a");
for (var i=0; i<anchors.length; i++) {
var anchor = anchors[i];
if (anchor.getAttribute("href") &&
anchor.getAttribute("rel") == "external")
anchor.target = "_blank";
}
}
window.onload = externallinks;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章