JavaScript中window.open用法實(shí)例詳解
本文較為詳細(xì)的分析了JavaScript中window.open用法。分享給大家供大家參考。具體如下:
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>
參數(shù)解釋:
js腳本開始;
window.open 彈出新窗口的命令;
'page.html' 彈出窗口的文件名;
'newwindow' 彈出窗口的名字(不是文件名),非必須,可用空''代替;
height=100 窗口高度;
width=400 窗口寬度;
top=0 窗口距離屏幕上方的象素值;
left=0 窗口距離屏幕左側(cè)的象素值;
toolbar=no 是否顯示工具欄,yes為顯示;
menubar,scrollbars 表示菜單欄和滾動(dòng)欄。
resizable=no 是否允許改變窗口大小,yes為允許;
location=no 是否顯示地址欄,yes為允許;
status=no 是否顯示狀態(tài)欄內(nèi)的信息(通常是文件已經(jīng)打開),yes為允許;
1、用函數(shù)控制彈出窗口
下面是一個(gè)完整的代碼。
<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()"> ...任意的頁(yè)面內(nèi)容... /body> </html>
這里定義了一個(gè)函數(shù)openwin(),函數(shù)內(nèi)容就是打開一個(gè)窗口。在調(diào)用它之前沒有任何用途。怎么調(diào)用呢?
方法一: 瀏覽器讀頁(yè)面時(shí)彈出窗口;
方法二: 瀏覽器離開頁(yè)面時(shí)彈出窗口;
方法三:用一個(gè)連接調(diào)用:打開一個(gè)窗口 注意:使用的“#”是虛連接。
方法四:用一個(gè)按鈕調(diào)用:
2、定時(shí)關(guān)閉彈出的窗口 (有些網(wǎng)站注冊(cè)成功后顯示n秒轉(zhuǎn)到注冊(cè)前的那頁(yè)信息,或自己跳轉(zhuǎn))
下面我們?cè)賹?duì)彈出的窗口進(jìn)行一些控制,效果就更好了。
如果我們?cè)賹⒁恍《未a 加入彈出的頁(yè)面(注意是加入到page.html的HTML中,可不是主頁(yè)面中,否則 ...),讓它10秒后自動(dòng)關(guān)閉是不是更酷了?
首先,將如下代碼加入page.html文件的區(qū):
<script language="Javascript"> function closeit() { setTimeout("self.close()",10000) //毫秒 } </script>
然后,再用 這一句話代替page.html中原有的這一句就可以了。
(這一句話千萬(wàn)不要忘記寫??!這一句的作用是調(diào)用關(guān)閉窗口的代碼 ,10秒鐘后就自行關(guān)閉該窗口。
3、 僅彈出一次窗口(cookie控制)
回想一下,上面的彈出窗口雖然酷,但是有一點(diǎn)小毛病,比如你將上面的腳本放在一個(gè)需要頻繁經(jīng)過的頁(yè)面里(例如首頁(yè)),
那么每次刷新這個(gè)頁(yè)面,窗口都會(huì)彈出一次,是不是非常煩人?有解決的辦法嗎?
我們使用cookie來控制一下。
首先,將如下代碼加入主頁(yè)面HTML的區(qū):
<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?。。?替換主頁(yè)面中原有的
這一句即可。你可以試著刷新一下這個(gè)頁(yè)面或重新進(jìn)入該頁(yè)面,窗口再也不會(huì)彈出了。
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
相關(guān)文章
security.js實(shí)現(xiàn)的RSA加密功能示例
這篇文章主要介紹了security.js實(shí)現(xiàn)的RSA加密功能,結(jié)合實(shí)例形式分析了基于security.js進(jìn)行RSA加密的相關(guān)操作技巧,需要的朋友可以參考下2018-06-06JavaScript中Form表單技術(shù)匯總(推薦)
這篇文章主要介紹了JavaScript中Form表單技術(shù)的相關(guān)資料,包括簡(jiǎn)單的表單驗(yàn)證和正則表達(dá)式驗(yàn)證,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06