JavaScript中window.open用法執行個體詳解_javascript技巧

來源:互聯網
上載者:User

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

複製代碼 代碼如下:
<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>

參數解釋:

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程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.