首頁 > web前端 > js教程 > 主體

JavaScript中window.open用法實例詳解_javascript技巧

WBOY
發布: 2016-05-16 16:04:06
原創
1306 人瀏覽過

本文較為詳細的分析了JavaScript中window.open用法。分享給大家供大家參考。具體如下:

複製程式碼 程式碼如下:

參數解釋:

js腳本開始;
 
window.open 彈出新視窗的指令;
'page.html' 彈出視窗的檔案名稱;
'newwindow' 彈出視窗的名字(不是檔案名稱),非必須,可用空''取代;
height=100 視窗高度;
width=400 視窗寬度;
top=0 視窗距離螢幕上方的像素值;
left=0 視窗距離螢幕左側的像素值;
toolbar=no 是否顯示工具列,yes為顯示;
menubar,scrollbars 表示選單列和滾動欄。
resizable=no 是否允許改變視窗大小,以yes為允許;
location=no 是否顯示網址列,yes為允許;
status=no 是否顯示狀態列內的資訊(通常是檔案已開啟),以yes為允許;

1、用函數控制彈出視窗
 
下面是一個完整的程式碼。

<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(),函數內容就是開啟一個視窗。在調用它之前沒有任何用途。怎麼調用呢?
 
方法一: 瀏覽器讀取頁面時彈出視窗;
 
方法二: 瀏覽器離開頁面時彈出視窗;
 
方法三:用一個連線呼叫:開啟一個視窗 注意:使用的「#」是虛連接。
 
方法四:用一個按鈕呼叫:

2、定時關閉彈出的視窗 (有些網站註冊成功後顯示n秒轉到註冊前的那頁信息,或自己跳轉)
 
下面我們再對彈出的視窗做一些控制,效果就更好了。
 
如果我們再將一小段程式碼 加入彈出的頁面(注意是加入到page.html的HTML中,可不是主頁面中,否則 ...),讓它10秒後自動關閉是不是更酷了?
 
首先,將下列程式碼加入page.html檔案的區域:

<script language="Javascript">
function closeit()
{
setTimeout("self.close()",10000) //毫秒
}
</script>
登入後複製

然後,再用 這句話代替page.html中原有的這句話就可以了。
 
(這句話千萬不要忘記寫啊!這一句的作用是呼叫關閉視窗的程式碼 ,10秒鐘後就自行關閉該視窗。

3、 僅彈出一次視窗(cookie控制)
 
回想一下,上面的彈出視窗雖然酷,但是有一點小毛病,例如你將上面的腳本放在一個需要頻繁經過的頁面裡(例如首頁),
 
那麼每次刷新這個頁面,視窗都會彈出一次,是不是非常煩人?有解決的辦法嗎?
 
我們使用cookie來控制一下。
 
首先,將以下程式碼加入主頁HTML的區:

<script>
function openwin()
{window.open("page.html","","width=200,height=200")}
function get_cookie(Name)
{
 var search = Name + "="
 var returnvalue = "";
 if (documents.cookie.length > 0) {
 offset = documents.cookie.indexOf(search)
 if (offset != -1) {
 offset += search.length
 end = documents.cookie.indexOf(";", offset);
 if (end == -1)
 end = documents.cookie.length;
 returnvalue=unescape(documents.cookie.substring(offset,end))
 }
 }
 return returnvalue;
}
function loadpopup(){
 if (get_cookie('popped')==''){
 openwin() ;
  documents.cookie="popped=yes" ;
 }
}
</script>
登入後複製

然後,用(注意不是openwin而是loadpop啊!) 取代主頁中原有的

這一句即可。你可以試著刷新這個頁面或重新進入該頁面,視窗再也不會彈出了。

希望本文所述對大家的javascript程式設計有所幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板