首頁 >web前端 >js教程 >九種js彈出對話框的方法總結_javascript技巧

九種js彈出對話框的方法總結_javascript技巧

WBOY
WBOY原創
2016-05-16 17:40:461151瀏覽

【1、最基本的js彈出對話框視窗程式碼】

這是最基本的js彈出對話框,其實程式碼就幾句非常簡單:

複製程式碼 程式碼如下:



因為這是一段javascripts程式碼,所以它們應該放在之間。 是對某些版本低的瀏覽器起作用,在這些舊瀏覽器中不會將標籤中的程式碼顯示為文字。要養成這個好習慣。

window.open ("page.html") 用來控制彈出新的視窗page.html,如果page.html不與主視窗在同一路徑下,前面應寫明路徑,絕對路徑(http:// )和相對路徑(../)均可。用單引號和雙引號都可以,但不要混用。
這段程式碼可以加入HTML的任意位置,

和之間可以,間也可以,越前越早執行,尤其是頁面程式碼長的頁面,這種js彈出對話框想早點彈出就盡量往前放。


複製程式碼


程式碼如下:


View Code


參數解釋:

toolbar=no 是否顯示工具列,yes為顯示;menubar,scrollbars 表示選單列和滾動列。

resizable=no 是否允許改變視窗大小,yes為允許;

location=no 是否顯示地址欄,yes為允許;

status=no 是否顯示狀態列內的資訊(通常是檔案已開啟),yes為允許;

js腳本結束


複製程式碼



程式碼如下:


View Code



...任意的頁面內容...


這裡定義了一個函數openwin(),函數內容就是開啟一個視窗。在調用它之前沒有任何用途。 怎麼呼叫呢? 方法一:瀏覽器讀取頁面時彈出視窗;


複製程式碼

程式碼如下:



複製程式碼

程式碼如下:

方法三:用一個連線呼叫:
複製程式碼 程式碼如下:

注意:使用的「#」是虛擬連結。

方法四:用一個按鈕呼叫:

複製程式碼 程式碼如下:


【4.同時彈出2個視窗的js彈出對話框】

對原始碼稍微改動一下:

複製程式碼 程式碼如下:

View Code



為避免彈出的2個視窗覆蓋,用top和left控制一下彈出的位置不要互相覆蓋即可。最後用上面說的四種方法呼叫即可。

注意:2個js彈出對話框視窗的name(newwindows和newwindow2)不要相同,或乾脆全部為空。

【5.主視窗開啟檔案1.htm,同時彈出小視窗page.html】

如下程式碼加入主視窗

區:

複製程式碼 程式碼如下:

View Code



加入區:

複製程式碼 程式碼如下:

即可。

【6、js彈出對話框彈出的視窗之定時關閉控制】

下面我們再對js彈出對話框的視窗做一些控制,效果就更好了。如果我們再將一小段程式碼加入彈出的頁面(注意是加入到page.html的HTML中,可不是主頁面中,否則...),讓它10秒後自動關閉是不是更酷了?

首先,將下列程式碼加入page.html檔案的

區:

複製程式碼 程式碼如下:


然後,再用

這句話代替page.html中原有的這句話就可以了。 (這句話千萬不要忘記寫啊!這一句的作用是呼叫關閉視窗的程式碼,10秒鐘後就自行關閉該視窗。)

【7.在js彈出對話框視窗中加上一個關閉按鈕】

複製程式碼
程式碼如下:




呵呵,現在更完美了!

【8、內包含的js彈出對話框視窗-一個頁面兩個視窗】

上面的範例都包含兩個窗口,一個是主窗口,另一個是彈出的小窗口。

透過下面的例子,你可以在一個頁面內完成上面的效果。

程式碼如下:

View Code






開啟一個視窗




看看OpenWindow.document.write( )裡面的程式碼不就是標準的HTML嗎?只要按照格式寫更多的行即可。千萬注意多一個標籤或少一個標籤就會出現錯誤。記得用OpenWindow.document.close()結束啊。

 【9、終極應用--js彈出對話框的視窗之Cookie控制】

回想一下,上面的彈出窗口雖然酷,但是有一點小毛病(沉浸在喜悅之中,一定沒有發現吧?)比如你將上面的腳本放在一個需要頻繁經過的頁面裡(例如首頁) ,那麼每次刷新這個頁面,視窗都會自動執行js彈出對話框程式碼一次,是不是非常煩人? :-(有解決的方法嗎?Yes! ;-) Follow me.

我們使用cookie來控制一下就可以了。

首先,將下列程式碼加入主頁HTML的

區:

複製程式碼 程式碼如下:

View Code

<script><BR>function openwin()<BR>{window.open("page.html","","width=200,height=200")}<BR>function get_cookie(Name)<BR>{var search = Name "="<BR>var returnvalue = "";<BR>if (documents.cookie.length > 0) {<BR>offset = documents.cookie.indexOf(search)<BR>if (offset != -1) {<BR>offset = search.length<BR>end = documents.cookie.indexOf(";", offset);<BR>if (end == -1)<BR>end = documents.cookie.length;<BR>returnvalue=(documents.cookie.substring(offset,end))<BR>}<BR>}<BR>return returnvalue;<BR>}<BR>function loadpopup){<unction<BR>if (get_cookie("popped")==""){<BR>openwin()<BR>documents.cookie="popped=yes"<BR>}<BR>}<BR></script>

然後,用(注意不是openwin而是loadpop啊!)替換主頁中原有的這句話即可。你可以試著刷新這個頁面或重新進入該頁面,視窗再也不會再有js彈出對話框了。真正的實現只彈一次。

要注意的是,JS腳本中的大小寫最好前後保持一致。

以上就是九種js彈出對話框的程式碼,如果有其它方法也可以提供給我喔,當然自己寫的彈窗也是Ok的啦。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn