javascript
Web最基本的弹出窗口代码(javascript)
?
【1、最基本的彈出窗口代碼】
其實代碼非常簡單:
?
<SCRIPT LANGUAGE="javascript">
<!--
window.open ('page.html')
-->
</SCRIPT>
?
因為這是一段javascripts代碼,所以它們應該放在<SCRIPT LANGUAGE="javascript">標簽和</script>之間。<!-- 和 -->是對一些版本低的瀏覽器起作用,在這些老瀏覽器中不會將標簽中的代碼作為文本顯示出來。要養成這個好習慣啊。
window.open ('page.html') 用于控制彈出新的窗口page.html,如果page.html不與主窗口在同一路徑下,前面應寫明路徑,絕對路徑(http ://)和相對路徑(../)均可。
用單引號和雙引號都可以,只是不要混用。
這一段代碼可以加入HTML的任意位置,<head>和</head>之間可以,<body& gt;間</body>也可以,越前越早執行,尤其是頁面代碼長,又想使頁面早點彈出就盡量往前放。
?
【2、經過設置后的彈出窗口】
下面再說一說彈出窗口的設置。只要再往上面的代碼中加一點東西就可以了。我們來定制這個彈出的窗口的外觀,尺寸大小,彈出的位 置以適應該頁面的具體情況。
?
<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>
?
參數解釋:
?
<SCRIPT LANGUAGE="javascript"> 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為允許;
</SCRIPT> js腳本結束
?
【3、用函數控制彈出窗口】
下面是一個完整的代碼。
<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 οnlοad="openwin()">
...任意的頁面內容...
</body>
</html>
?
這里定義了一個函數openwin(),函數內容就是打開一個窗口。在調用它之前沒有任何用途。
怎么調用呢?
?
方法一:<body οnlοad="openwin()"> 瀏覽器讀頁面時彈出窗口;
方法二:<body οnunlοad="openwin()"> 瀏覽器離開頁面時彈出窗口;
方法三:用一個連接調用:
<a href="#" οnclick="openwin()">打開一個窗口</a>
注意:使用的“#”是虛連接。
方法四:用一個按鈕調用:
<input type="button" οnclick="openwin()" value="打開窗口">
?
【4、同時彈出2個窗口】
?
對源代碼稍微改動一下:
<script LANGUAGE="JavaScript">
<!--
function openwin() {
window.open ("page.html", "newwindow", "height=100, width=100, top=0, left=0,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no")
//寫成一行
window.open ("page2.html", "newwindow2", "height=100, width=100, top=100, left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no")
//寫成一行
}
//-->
</script>
?
為避免彈出的2個窗口覆蓋,用top和left控制一下彈出的位置不要相互覆蓋即可。最后用上面說過的四種方法調用即可。
注意:2個窗口的name(newwindows和newwindow2)不要相同,或者干脆全部為空。OK?
?
【5、主窗口打開文件1.htm,同時彈出小窗口page.html】
?
如下代碼加入主窗口<head>區:
?
<script language="javascript">
<!--
function openwin() {
window.open("page.html","","width=200,height=200")
}
//-->
</script>
加入<body>區:
<a href="1.htm" οnclick="openwin()">open</a>即可。
?
【6、彈出的窗口之定時關閉控制】
?
下面我們再對彈出的窗口進行一些控制,效果就更好了。如果我們再將一小段代碼加入彈出的頁面(注意是加入到page.html 的HTML中,可不是主頁面中,否則...),讓它10秒后自動關閉是不是更酷了?
?
首先,將如下代碼加入page.html文件的<head>區:
<script language="JavaScript">
?
function closeit() {
?
setTimeout("self.close()",10000) //毫秒
?
}
?
</script>
然后,再用<body οnlοad="closeit()"> 這一句話代替page.html中原有的<BODY>這一句就可以了。(這一句話千萬不要忘記寫啊!這一句的作用是 調用關閉窗口的代碼,10秒鐘后就自行關閉該窗口。)
?
【7、在彈出窗口中加上一個關閉按鈕】
<FORM>
<INPUT TYPE='BUTTON' VALUE='關閉' onClick='window.close()'>
</FORM>
呵呵,現在更加完美了!
?
【8、內包含的彈出窗口-一個頁面兩個窗口】
?
上面的例子都包含兩個窗口,一個是主窗口,另一個是彈出的小窗口。
通過下面的例子,你可以在一個頁面內完成上面的效果。
?
<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
function openwin()
{
OpenWindow=window.open("", "newwin", "height=250, width=250,toolbar=no,scrollbars="+scroll+",menubar=no");
//寫成一行
OpenWindow.document.write("<TITLE>例子</TITLE>")
OpenWindow.document.write("<BODY BGCOLOR=#ffffff>")
OpenWindow.document.write("<h1>Hello!</h1>")
OpenWindow.document.write("New window opened!")
OpenWindow.document.write("</BODY>")
OpenWindow.document.write("</HTML>")
OpenWindow.document.close()
}
</SCRIPT>
</head>
<body>
<a href="#" οnclick="openwin()">打開一個窗口</a>
<input type="button" οnclick="openwin()" value="打開窗口">
</body>
</html>
?
看看 OpenWindow.document.write()里面的代碼不就是標準的HTML嗎?只要按照格式寫更多的行即可。千萬 注意多一個標簽或少一個標簽就會出現錯誤。記得用OpenWindow.document.close()結束啊。
?
【9、終極應用--彈出的窗口之Cookie控制】
?
回想一下,上面的彈出窗口雖然酷,但是有一點小毛病(沉浸在喜悅之中,一定沒有發現吧?)比如你將上面的腳本放在一個需要頻繁 經過的頁面里(例如首頁),那么每次刷新這個頁面,窗口都會彈出一次,是不是非常煩人?:-(
有解決的辦法嗎?Yes! ;-) Follow me.
我們使用cookie來控制一下就可以了。
首先,將如下代碼加入主頁面HTML的<HEAD>區:
?
<script>
function openwin(){
window.open("page.html","","width=200,height=200")
}
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(){
if (get_cookie('popped')==''){
openwin()
document.cookie="popped=yes"
}
}
?
</script>
?
然后,用<body οnlοad="loadpopup()">(注意不是openwin而是loadpop啊!)替換主頁面中原有的< ;BODY>這一句即可。你可以試著刷新一下這個頁面或重新進入該頁面,窗口再也不會彈出了。真正的Pop-Only-O nce!
?
flash窗口
一、打開一個自定義寸的新窗
?
我們先用flash制作一個Button,然后按F9打開Action-Frame面板。點擊“+”按鈕, 選擇Action>>Browser/Network>>GetURL
[$nbsp]
在URL的輸入框里,輸入如下AS(如圖):
JavaScript:CGerCN_Window('cgercn.html','NewWindow','status=no,scrollbars=no,resizable=no,width=440,height=520'
?
發布網頁:完成剛才操作后,我們再按快捷鍵Shift+F12將網頁發布出來,這時,我們操作還沒有完成,我們要加一段JAVA函數,讓Flash調用
?
我用Dreamweaver打開剛才發布出來的HTML文件,點擊按鈕,切換到代碼(show code)的編輯模式。在<head>上部分加上如下javescript代碼:
<script language="JavaScript">
<!--
function CGerCN_Window(theURL,winName,features) { //v2.0
[$nbsp] window.open(theURL,winName,features);
}
//-->
</script>
?
?
二、打開主頁,就讓Flash全屏播放
?
?
分析:做這種效果,先首要有兩個網頁,一個是真的主頁,也就是全屏后我們所看到內容(我將之取名為:fullscreen)一個是完成全屏功能的頁面(我們先將之取名為:openwindws)。我們所要做的就是,在openwindws里上一段代碼,當完全打開時,它會自動全屏打開fullscreen這個文件,而它自已會自動關閉
3)方法,我們先用DW新建一個網頁,在網頁的<head>部分加入如下代碼:
<script language="JavaScript">
<!--
function Open(page) {
OpenWin = this.open(page, "MainWindow", "fullscreen=yes,type=fullWindow,scrollbars=no,directories=no,status=no,menubar=no");
}
//-->
</script>
?
//----------這部分是定義打開全屏窗口的必要代碼
?
<object id="closes" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
<param name="Command" value="Close">
</object>
?
//----------這部分是用來強制關閉IE的ActiveX程序代碼,沒有用Jave是因為,如果你用java來自動關閉窗口,會彈出確認對話框
?
在<body>部分加入如下代碼:
<body onLoad="closes.Click();Open('fullscreen.html');">
?
//----------這部分代碼,是讓網頁(openwindws)一下載(onload)完畢,就自動打開全屏窗口(fullscreen)
?
4)這時打開的全屏窗口,是法關閉的,只能用Alt+F4強制退出,如果這樣的話,訪問者會對你網站的映象大打折扣,這當然是我們所不希望,所以,為了更體貼一點,我們還要用flash做一個半閉的button。并button上加上這段AS:
?
on (release) {
getURL("JavaScript:window.close()");
}
?
?
三、無邊框窗口
?
方法
這種效果,與Flash幾乎是沒有關系的,全部是jave在后臺完成,但如果與flash配合作用,會達到不錯的效果
它的代碼與全屏不多
將這段代碼入到<head>部分:
<script language="JavaScript">
<!--
function NewWin()
{
neo=window.open('cgercn.htm','Chromeless','fullscreen=1');
//----要實現無邊框flash文件的相對路徑,也可以是網址
neo.resizeTo(440,500);
//-------無邊框窗口的尺寸
(閱讀次數:)?
總結
以上是生活随笔為你收集整理的Web最基本的弹出窗口代码(javascript)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS开发笔记[16/50]:Views
- 下一篇: javascript js jquery