?? window_open用法詳解.htm
字號(hào):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0049)http://fason.nease.net/code/form/other/window.htm -->
<HTML><HEAD><TITLE>window.open用法詳解</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId></HEAD>
<BODY>
<DIV align=center>
<CENTER>
<TABLE style="FONT-SIZE: 9pt; COLOR: #000000" borderColor=#000000 cellSpacing=0
borderColorDark=#ffffff cellPadding=0 width="90%" borderColorLight=#000000
border=1>
<TBODY>
<TR>
<TD width="100%">【1、最基本的彈出窗口代碼】 <BR>其實(shí)代碼非常簡單:<BR><BR><BR><SCRIPT
LANGUAGE="javascript"><BR><!--<BR>window.open
('page.html')<BR>--><BR></SCRIPT> <BR><BR><BR> 因?yàn)檫@是一段javascripts代碼,所以它們應(yīng)該放在<SCRIPT
LANGUAGE="javas<BR>cript">標(biāo)簽和</script>之間。<!-- 和
-->是對(duì)一些版本低的瀏覽器起作用,在<BR>這些老瀏覽器中不會(huì)將標(biāo)簽中的代碼作為文本顯示出來。要養(yǎng)成這個(gè)好習(xí)慣啊。<BR> window.open
('page.html')
用于控制彈出新的窗口page.html,如果page.ht<BR>ml不與主窗口在同一路徑下,前面應(yīng)寫明路徑,絕對(duì)路徑(http://和相對(duì)路徑(<BR>../)均可。<BR> 用單引號(hào)和雙引號(hào)都可以,只是不要混用。<BR> 這一段代碼可以加入HTML的任意位置,<head>和</head>之間可以,<body>間<<BR>/body>也可以,越前越早執(zhí)行,尤其是頁面代碼長,又想使頁面早點(diǎn)彈出就盡量<BR>往前放。<BR><BR> 【2、經(jīng)過設(shè)置后的彈出窗口】<BR> 下面再說一說彈出窗口的設(shè)置。只要再往上面的代碼中加一點(diǎn)東西就可以了。<BR>我們來定制這個(gè)彈出的窗口的外觀,尺寸大小,彈出的位置以適應(yīng)該頁面的具體<BR>情況。<BR><BR><SCRIPT
LANGUAGE="javascript"><BR><!--<BR>window.open ('page.html',
'newwindow', 'height=100, width=400, top=0, <BR>left=0, toolbar=no,
menubar=no, scrollbars=no, resizable=no,location=n<BR>o,
status=no')<BR>//寫成一行<BR>--><BR></SCRIPT> <BR><BR> 參數(shù)解釋:<BR><BR><BR><SCRIPT
LANGUAGE="javascript"> js腳本開始;<BR>window.open 彈出新窗口的命令;<BR>'page.html'
彈出窗口的文件名;<BR>'newwindow' 彈出窗口的名字(不是文件名),非必須,可用空''代替;<BR>height=100
窗口高度;<BR>width=400 窗口寬度;<BR>top=0 窗口距離屏幕上方的象素值;<BR>left=0
窗口距離屏幕左側(cè)的象素值;<BR>toolbar=no 是否顯示工具欄,yes為顯示;<BR>menubar,scrollbars
表示菜單欄和滾動(dòng)欄。<BR>resizable=no 是否允許改變窗口大小,yes為允許;<BR>location=no
是否顯示地址欄,yes為允許;<BR>status=no
是否顯示狀態(tài)欄內(nèi)的信息(通常是文件已經(jīng)打開),yes為允許;<BR></SCRIPT>
js腳本結(jié)束<BR><BR> 【3、用函數(shù)控制彈出窗口】<BR> 下面是一個(gè)完整的代碼。<BR><html><BR><head><BR><script
LANGUAGE="JavaScript"><BR><!--<BR>function openwin()
{<BR>window.open ("page.html", "newwindow", "height=100, width=400,
toolbar<BR>=no, menubar=no, scrollbars=no, resizable=no, location=no,
status=no")<BR>//寫成一行<BR>}<BR>//--><BR></script><BR></head><BR><body
onload="openwin()"><BR>...任意的頁面內(nèi)容...<BR></body><BR></html><BR><BR> 這里定義了一個(gè)函數(shù)openwin(),函數(shù)內(nèi)容就是打開一個(gè)窗口。在調(diào)用它之前沒<BR>有任何用途。<BR>怎么調(diào)用呢?<BR><BR><BR> 方法一:<body
onload="openwin()"> 瀏覽器讀頁面時(shí)彈出窗口;<BR> 方法二:<body
onunload="openwin()"> 瀏覽器離開頁面時(shí)彈出窗口;<BR> 方法三:用一個(gè)連接調(diào)用:<BR><a href="#"
onclick="openwin()">打開一個(gè)窗口</a><BR>注意:使用的“#”是虛連接。<BR> 方法四:用一個(gè)按鈕調(diào)用:<BR><input
type="button" onclick="openwin()"
value="打開窗口"><BR><BR> 【4、同時(shí)彈出2個(gè)窗口】<BR><BR><BR> 對(duì)源代碼稍微改動(dòng)一下:<BR><script
LANGUAGE="JavaScript"><BR><!--<BR>function openwin()
{<BR>window.open ("page.html", "newwindow", "height=100, width=100,
top=0, <BR>left=0,toolbar=no, menubar=no, scrollbars=no,
resizable=no, location=n<BR>o, status=no")<BR>//寫成一行<BR>window.open
("page2.html", "newwindow2", "height=100, width=100, top=1<BR>00,
left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no,
loca<BR>tion=no,
status=no")<BR>//寫成一行<BR>}<BR>//--><BR></script><BR><BR><BR> 為避免彈出的2個(gè)窗口覆蓋,用top和left控制一下彈出的位置不要相互覆蓋即<BR>可。最后用上面說過的四種方法調(diào)用即可。<BR>注意:2個(gè)窗口的name(newwindows和newwindow2)不要相同,或者干脆全部為空。<BR>OK?<BR><BR> 【5、主窗口打開文件1.htm,同時(shí)彈出小窗口page.html】<BR><BR> 如下代碼加入主窗口<head>區(qū):<BR><BR><script
language="javascript"><BR><!--<BR>function openwin()
{<BR>window.open("page.html","","width=200,height=200")<BR>} <BR>//--><BR></script><BR>加入<body>區(qū):<BR><a
href="1.htm"
onclick="openwin()">open</a>即可。<BR><BR> 【6、彈出的窗口之定時(shí)關(guān)閉控制】<BR><BR> 下面我們再對(duì)彈出的窗口進(jìn)行一些控制,效果就更好了。如果我們再將一小段<BR>代碼加入彈出的頁面(注意是加入到page.html的HTML中,可不是主頁面中,否則<BR>...),讓它10秒后自動(dòng)關(guān)閉是不是更酷了?<BR><BR><BR> 首先,將如下代碼加入page.html文件的<head>區(qū):<BR><script
language="JavaScript"><BR><BR>function closeit()
{<BR><BR>setTimeout("self.close()",10000)
//毫秒<BR><BR>}<BR><BR></script><BR> 然后,再用<body
onload="closeit()">
這一句話代替page.html中原有的<BO<BR>DY>這一句就可以了。(這一句話千萬不要忘記寫啊!這一句的作用是調(diào)用關(guān)閉窗<BR>口的代碼,10秒鐘后就自行關(guān)閉該窗口。)<BR><BR> 【7、在彈出窗口中加上一個(gè)關(guān)閉按鈕】<BR><FORM><BR><INPUT
TYPE='BUTTON' VALUE='關(guān)閉'
onClick='window.close()'><BR></FORM><BR>呵呵,現(xiàn)在更加完美了!<BR><BR> 【8、內(nèi)包含的彈出窗口-一個(gè)頁面兩個(gè)窗口】<BR><BR>上面的例子都包含兩個(gè)窗口,一個(gè)是主窗口,另一個(gè)是彈出的小窗口。<BR>通過下面的例子,你可以在一個(gè)頁面內(nèi)完成上面的效果。<BR><BR><html><BR><head><BR><SCRIPT
LANGUAGE="JavaScript"><BR>function
openwin()<BR>{ <BR>OpenWindow=window.open("", "newwin", "height=250,
width=250,toolbar=no<BR>,scrollbars="+scroll+",menubar=no");<BR>//寫成一行<BR>OpenWindow.document.write("<TITLE>例子</TITLE>")<BR>OpenWindow.document.write("<BODY
BGCOLOR=#ffffff>")<BR>OpenWindow.document.write("<h1>Hello!</h1>")<BR>OpenWindow.document.write("New
window
opened!")<BR>OpenWindow.document.write("</BODY>")<BR>OpenWindow.document.write("</HTML>")<BR>OpenWindow.document.close()<BR>}<BR></SCRIPT><BR></head><BR><body><BR><a
href="#" onclick="openwin()">打開一個(gè)窗口</a><BR><input
type="button" onclick="openwin()"
value="打開窗口"><BR></body><BR></html> <BR><BR> 看看
OpenWindow.document.write()里面的代碼不就是標(biāo)準(zhǔn)的HTML嗎?只要按<BR>照格式寫更多的行即可。千萬注意多一個(gè)標(biāo)簽或少一個(gè)標(biāo)簽就會(huì)出現(xiàn)錯(cuò)誤。記得<BR>用OpenWindow.document.close()結(jié)束啊。<BR><BR><BR> 【9、終極應(yīng)用--彈出的窗口之Cookie控制】<BR><BR> 回想一下,上面的彈出窗口雖然酷,但是有一點(diǎn)小毛病(沉浸在喜悅之中,一定<BR>沒有發(fā)現(xiàn)吧?)比如你將上面的腳本放在一個(gè)需要頻繁經(jīng)過的頁面里(例如首頁),<BR>那么每次刷新這個(gè)頁面,窗口都會(huì)彈出一次,是不是非常煩人?:-(<BR> 有解決的辦法嗎?Yes!
;-) Follow
me.<BR> 我們使用cookie來控制一下就可以了。<BR> 首先,將如下代碼加入主頁面HTML的<HEAD>區(qū):<BR><BR><script><BR>function
openwin(){<BR>window.open("page.html","","width=200,height=200")<BR>} <BR>function
get_cookie(Name) {<BR>var search = Name + "="<BR>var returnvalue =
"";<BR>if (document.cookie.length > 0) {<BR>offset =
document.cookie.indexOf(search)<BR>if (offset != -1) { <BR>offset +=
search.length<BR>end = document.cookie.indexOf(";", offset);<BR>if (end ==
-1)<BR>end =
document.cookie.length;<BR>returnvalue=unescape(document.cookie.substring(offset,
end))<BR>}<BR>}<BR>return returnvalue;<BR>}<BR><BR>function
loadpopup(){<BR>if
(get_cookie('popped')==''){<BR>openwin()<BR>document.cookie="popped=yes"<BR>}<BR>}<BR><BR></script><BR><BR> 然后,用<body
onload="loadpopup()">(注意不是openwin而是loadpop啊!)<BR>替換主頁面中原有的<BODY>這一句即可。你可以試著刷新一下這個(gè)頁面或重新進(jìn)<BR>入該頁面,窗口再也不會(huì)彈出了。真正的Pop-Only-Once!</TD></TR></TBODY></TABLE></CENTER></DIV>
<P align=right><A href="http://fason.nease.net/">【阿信的小天地】</A></P>
<P></P></BODY></HTML>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -