點選彈出水平垂直居中視窗程式碼例項
彈出居中視窗這樣的效果,大家應該不陌生,在大量的網站都有應用,比如點選彈出註冊視窗或者登陸視窗,還有提示之類的功能都會用到彈出按鈕效果,下面是一段彈出垂直水平居中視窗的程式碼例項。
程式碼如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>彈出居中視窗效果程式碼-螞蟻部落</title> <style type="text/css"> .window { width:250px; background-color:#d0def0; position:absolute; padding:2px; margin:5px; display:none; } .content { height:150px; background-color:#FFF; font-size:14px; overflow:auto; } .title { padding:2px; color:#0CF; font-size:14px; } .title img { float:right; } </style> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#btn").click(function(){ popCenterWindow(); }) }) var windowHeight; var windowWidth; var popWidth; var popHeight; function init(){ windowHeight=$(window).height(); windowWidth=$(window).width(); popHeight=$(".window").height(); popWidth=$(".window").width(); } function closeWindow(){ $(".title img").click(function(){ $(this).parent().parent().hide("slow"); }) } function popCenterWindow(){ init(); var popY=(windowHeight-popHeight)/2; var popX=(windowWidth-popWidth)/2; $("#center").css("top",popY).css("left",popX).slideToggle("slow"); closeWindow(); } </script> </head> <body> <div id="box"> <input type="button" value="彈出居中視窗" id="btn" /> </div> <div class="window" id="center"> <div id="title" class="title"><img src="mytest/jQuery/close.jpg" alt="關閉" />螞蟻部落歡迎您</div> <div class="content">每天都是新的,好好珍惜!</div> </div> </body> </html>
當點選按鈕的時候能夠彈出一個對話方塊,點選關閉按鈕能夠關閉此對話方塊,彈出和關閉過程都是平滑的,下面簡單介紹一下此效果的實現過程。
一.實現原理:
在預設狀態下,彈出視窗是隱藏的,當點選按鈕的時候,程式會計算出網頁視窗的尺寸和彈出框的尺寸,由於彈出框是採用絕對定位,於是將它的top和left屬性值分別設定為(視窗高度-彈出框高度)/2和(視窗寬度-彈出框寬度)/2這樣就實現垂直水平居中效果。點選關閉按鈕可以再將彈出框隱藏。
二.程式碼註釋:
1.$(document).ready(function(){}),文件結構完全載入完畢再去執行函式中的程式碼。
2.$("#btn").click(function(){}),為按鈕註冊點選事件處理函式。
3.popCenterWindow(),執行此函式。
4.var windowHeight,宣告一個變數用於儲存視窗的高度。
5.var windowWidth,宣告一個變數用於儲存視窗的寬度。
6.var popWidth,宣告一個變數用於儲存彈出視窗的寬度。
7.var popHeight,宣告一個變數用於儲存彈出視窗的高度。
8.function init(){},用於初始化上面宣告的幾個變數。
9.windowHeight=$(window).height(),獲取網頁視窗的高度。
10.windowWidth=$(window).width(),獲取網頁視窗的寬度。
11.popHeight=$(".window").height(),獲取彈出視窗的高度。
12.popWidth=$(".window").width(),獲取彈出視窗的寬度。
13.function closeWindow(){},用於關閉彈出視窗。
14.$(".title img").click(function(){ }),為關閉圖片註冊事件處理函式。
15.$(this).parent().parent().hide("slow"),關閉彈出視窗。
16.function popCenterWindow(){},規定彈出視窗的位置。
17.init(),執行此函式。
18.var popY=(windowHeight-popHeight)/2,計算出彈出視窗的top值。
19.var popX=(windowWidth-popWidth)/2,計算出彈出視窗的left值。
20.$("#center").css("top",popY).css("left",popX).slideToggle("slow"),設定top和left屬性值。
21.closeWindow(),執行此函式的目的就是註冊關閉圖片的點選事件處理函式。
三.相關閱讀:
1.parent()函式可以參閱jQuery parent()一章節。
2.hide()函式可以參閱jQuery hide()一章節。
3.css()可以參閱jQuery css()一章節。
相關文章
- jQuery實現的彈出垂直水平居中視窗效果程式碼例項jQuery
- 點選連結<a>彈出確認視窗程式碼例項
- 移動端點選彈出提示視窗程式碼例項
- div垂直水平居中例項程式碼
- 點選彈出鎖屏層例項程式碼
- 點選彈出半透明層程式碼例項
- css水平垂直居中程式碼例項CSS
- 點選頂部彈出提示層程式碼例項
- jQuery點選顯示彈出層例項程式碼jQuery
- div始終在視窗中垂直水平居中程式碼例項
- 點選彈出一個帶有半透明遮罩的居中視窗遮罩
- 點選彈出帶有灰色背景使用者登入視窗程式碼例項
- 點選文字框彈出可檢索下拉選單程式碼例項
- javascript自帶的彈出輸出視窗程式碼例項JavaScript
- 點選連結a彈出一個確認框例項程式碼
- jQuery實現的div垂直水平居中例項程式碼jQuery
- 調整視窗大小也能夠實現div水平垂直居中程式碼例項
- 關閉瀏覽器視窗彈出提示程式碼例項瀏覽器
- css實現div全屏水平垂直居中效果程式碼例項CSS
- css實現的div垂直水平居中程式碼例項CSS
- 設定<img>圖片垂直水平居中程式碼例項
- css實現的彈出視窗始終垂直水平居中效果CSS
- jquery實現的彈出居中視窗效果jQuery
- javascript實現的點選彈出刪除提示框程式碼例項JavaScript
- js點選彈出和隱藏一個div層效果程式碼例項JS
- css3實現元素垂直水平居中程式碼例項CSSS3
- js實現的點選彈出確認視窗程式碼JS
- jQuery將div在視窗中垂直居中例項程式碼jQuery
- js實現的垂直選項卡效果程式碼例項JS
- 點選文字框彈出可供選擇的checkbox核取方塊程式碼例項
- css水平下拉導航選單程式碼例項CSS
- 直播系統程式碼,點選選擇欄,彈出各個選項
- 可以限定拖動範圍的彈出視窗效果程式碼例項
- window.open()實現彈出視窗居中顯示程式碼例項
- 未知寬高圖片在元素中垂直水平居中程式碼例項
- css3實現div元素垂直水平居中程式碼例項CSSS3
- 垂直手風琴導航選單程式碼例項
- 彈出視窗程式碼