|
在設(shè)計(jì)網(wǎng)站的時(shí)候,在網(wǎng)站有重大的變動(dòng),或者需要作什么聲明的時(shí)候,我們就要用到彈出 窗口,這時(shí)只要我們一進(jìn)入這個(gè)頁(yè)面,就會(huì)彈出一個(gè)窗口,其實(shí)要制作這樣的彈出窗口真的非常 的容易,只要在該頁(yè)面的HTML代碼里加入一段Javascript代碼即可實(shí)現(xiàn)了。我們就來(lái)看看這最簡(jiǎn) 單的彈出窗口:把下面的這一段代碼可以加入HTML文件的<head>和</head>之間或者<body>間</body>就 行的了,越在前面越早執(zhí)行的喲! <SCRIPT LANGUAGE="javascript"> //*JAVASCRIPT腳本的開(kāi)始標(biāo)簽,千萬(wàn)要記得啊
<!-- //*使不支持JAVASCRIPT的瀏覽器瀏覽時(shí)也不至于出錯(cuò) window.open ('pop1.html') //*這就是關(guān)鍵,pop1.html就是你彈出窗口的內(nèi)容 --> </SCRIPT>
這里只需要注意這樣一點(diǎn)就行的了:window.open ('pop1.html') 用于控制彈出窗口pop1.html,如
果pop1.html不與主窗口文件在同一路徑下,你應(yīng)該在前面指明路徑,絕對(duì)路徑(http://)和相對(duì)路
徑(../)都可以的。里面用單引號(hào)和雙引號(hào)都可以,只是你千萬(wàn)別混用,一會(huì)用單引號(hào),而一會(huì)用雙引號(hào)。
上面我們實(shí)現(xiàn)的是最基本的彈出窗口,我們的起步,我們現(xiàn)在再來(lái)看一個(gè)稍微復(fù)雜點(diǎn)的彈出窗口,你只 要對(duì)上面的代碼作小小的改動(dòng)就行的了!這樣我們就能定制彈出窗口的外觀,尺寸大小,彈出的位置以適應(yīng) 該頁(yè)面的具體情況和文字的多少。 <SCRIPT LANGUAGE="javascript"> <!-- window.open ('pop2.html', 'popwindow', 'height=200, width=320, top=0, left=24, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no') //*上面的代碼要寫(xiě)在一行上面''popwindow' 彈出窗口的標(biāo)題名字;height=200 彈出窗口高度;width=320 彈出窗口寬度;top=0 彈出窗口距離屏幕上方的象素值;left=24 窗口距離屏幕左側(cè)的象素值;toolbar=no 彈出窗口是否顯示工具欄,yes為顯示;menubar,scrollbars 控制彈出窗口的菜單欄和滾動(dòng)欄的顯示。resizable=no 是否允許改變彈出窗口大小,yes為允許;location=no 彈出窗口是否顯示地址欄,yes為允許;status=no 是否顯示狀態(tài)欄內(nèi)的信息(通常是文件已經(jīng)打開(kāi)),yes為允許; --> </SCRIPT>
但是我們看到,這樣的彈出窗口實(shí)在太簡(jiǎn)單的了,你基本上不能對(duì)他進(jìn)行什么樣的控制和設(shè)置,我們需要的是能滿足我們的需要的彈出窗口(現(xiàn)代人是要求越來(lái)越高的了),那我們就用下面這個(gè)腳本來(lái)實(shí)現(xiàn),你不但可以定制窗口大小,你還可以根據(jù)自己的需要改成你自己的說(shuō)明的,這樣的歡迎窗口一定讓你的主頁(yè)更酷。 將如下代碼加入HTML代碼的<HEAD>和</HEAD>之間:
<script language="JavaScript"> <!-- var gt = unescape('%3e'); var popup = null; var over = "Launch Pop-up Navigator"; popup = window.open('', 'popupnav', 'width=200,height=170,resizable=1,scrollbars=auto');/*width和height是窗口的大小,你可以根據(jù)自己的需要進(jìn)行調(diào)整,而resizable是控制窗口大小是否根據(jù)文字多少變化,值為0就固定了,為1可以變化,scrollbars是控制滾動(dòng)條的) if (popup != null) { if (popup.opener == null) { popup.opener = self; } popup.location.href = '說(shuō)明窗口內(nèi)容文件.html';/*popup.location.href = '用于說(shuō)明窗口內(nèi)容.htm',用于設(shè)置窗口中出現(xiàn)的內(nèi)容的文件名。 } // --> </script>
有時(shí)為了需要我們可以同時(shí)彈出兩個(gè)窗口,這實(shí)現(xiàn)難嗎?其實(shí)也不難,如果你理解了上面的,那簡(jiǎn)直就易如反掌了,來(lái)看看吧,你只要對(duì)上面的代碼稍微改動(dòng)一下就可以的了:
<script LANGUAGE="JavaScript"> <!-- window.open ("pop1.html", "popwindow1", "height=100, width=120, top=0, left=24,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no") window.open ("pop2.html", "popwindow2", "height=100, width=200, top=100, left=144,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no") //--> </script>
在這里,我們?yōu)榱吮苊鈴棾龅?個(gè)窗口覆蓋,用top和left控制一下彈出的位置不要相互覆蓋就可以的了。
有了上面這些, 我想你要做出很酷很好的彈出窗口已經(jīng)很容易的了,但是我們發(fā)現(xiàn)在你訪問(wèn)一個(gè)站點(diǎn)的時(shí)候, 如果經(jīng)常出現(xiàn)彈出窗口(每刷新一次就出現(xiàn)),我們就會(huì)覺(jué)得很煩的,這里我們看看對(duì)彈出窗口的一些優(yōu)化處理:
第一招,我們給彈出窗口加個(gè)“關(guān)閉窗口“按紐 只要加上這段代碼就行的了:
<FORM> <INPUT TYPE='BUTTON' VALUE='關(guān)閉' onClick='window.close()'> </FORM>
第二招:讓彈出窗口自己定時(shí)關(guān)閉 首先,將如下代碼加入pop1.html文件的<head>和</head>之間:
<script language="JavaScript"> <!-- function closeit() { setTimeout("self.close()",100000) //單位是毫秒,這里是100秒 </script>
然后,再用<body onload="closeit()"> 這一句話代替pop1.html中原有的<BODY>這一句就可以了。這樣100秒鐘后彈出窗口就會(huì)自行關(guān)閉
第三招:控制你的彈出窗口只彈出一次(如果每進(jìn)一次,刷新一次就彈出你不覺(jué)得很煩和麻煩嗎?)有什么好的辦法嗎? 那是當(dāng)然的啊,我們現(xiàn)在只要使用cookie來(lái)控制就能實(shí)現(xiàn)這樣的要求了。 首先,你需把將如下代碼加入到頁(yè)面HTML的<HEAD>和</HEAD>之間:
<script> function openwin(){ window.open("pop1.html","","width=120,height=240") } function get_cookie(Name) { var search = Name + "=" var returnvalue = ""; if (document.cookie.length > 0) { offset = document.cookie.indexOf(search) if (offset != -1) { offset += search.length end = document.cookie.indexOf(";", offset); if (end == -1) end = document.cookie.length; returnvalue=unescape(document.cookie.substring(offset, end)) } } return returnvalue; } function loadpopup(){ //*控制彈出窗口的函數(shù)喲,你要使用他的啊 if (get_cookie('popped')==''){ openwin() document.cookie="popped=yes" } } //--> </script>
然后,用<body onload="loadpopup()">替換頁(yè)面中原來(lái)的<BODY>這一句就行的了。這樣你的彈出窗口就只彈出一次了,既使大家了解了你的信息,也不會(huì)覺(jué)得煩的。最后祝大家做出你滿意的效果來(lái),到時(shí)別忘記了叫我來(lái)看看。
|