一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

JS彈出居中的DIV的代碼

首先再次詳細解釋一下JS中窗口和網頁的幾種尺寸屬性的含義 
document.body.clientWidth(網頁可見區域寬):是指瀏覽器顯示網頁的區域寬度,不包括瀏覽器的邊框寬度和垂直滾動條的寬度。大小隨著瀏覽器的窗口大小而改變。 
document.body.clientHeight(網頁可見區域高):是指瀏覽器顯示網頁的區域所能看到的高度,不包括瀏覽器的邊框寬度和水平滾動條的高度。大小隨著瀏覽器的窗口大小而改變。 
document.body.scrollTop(網頁被卷去的高):是指拉動垂直滾動條時網頁上面被地址欄及菜單欄遮蓋著的部分的高。 
document.body.scrollLeft(網頁被卷去的左):是指拉動水平滾動條時網頁左面被左邊線遮蓋著的部分的寬。 
現在我們來分析一下程序該如何實現: 

第一步我們要實現的是使層在彈出時絕對居中不去考慮是否有滾動條的情況。 
1.計算出層距離顯示區域左邊和上邊的位置 
注意:divId指的是所要居中的層,divId.clientWidth為其寬度!@ 
var divId = document.getElementById("xxx"); 
var v_left=(document.body.clientWidth-divId.clientWidth)/2; 
var v_top=(document.body.clientHeight-divId.clientHeight)/2; 
2.把得到的值重新賦給DIV的left和top屬性 
divId.style.left=v_left; 
divId.style.top=v_top; 
說明:divId為DIV標簽的id值 
這樣這個層就是居中顯示的了。 
第二步我們要實現的是使在拖動滾動條的情況下彈出的層也能居中。 
其實很簡單我們只要把拖動的寬度和高度加到前面計算出來的左邊距和上邊距中就OK 了。 
v_left+=document.body.scrollLeft; 
v_top+=document.body.scrollTop; 
2.把得到的值重新賦給DIV的left和top屬性 
divId.style.left=v_left; 
divId.style.top=v_top; 
這樣顯示出來就是居中的了。 
完整代碼如下:  

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行] 

如果你想在拖動滾動條或是窗口重置大小時,層也能居中顯示的話,可以在body的屬性里面加上onresize="divcenter();"和 onscroll="divcenter();"就OK了,不過可能顯示的效果不是很好,特別是在拖動滾動條時的效果可能是一擅一擅的,忒不爽。 

JavaScript技術JS彈出居中的DIV的代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲热热久久九九精品 | 国产在线色 | 18女人腿打开无遮掩免费 | 欧美黑人巨大日本人又爽又色 | 欧美日韩国产一区二区三区不卡 | 日韩a无吗一区二区三区 | 久草中文网 | 国产精品视频无圣光一区 | 激情小说激情视频激情图片 | 91性视频 | 麻豆播放 | 中文字幕亚洲一区二区三区 | 天天操婷婷 | 色女人在线 | 一区二区三区四区视频在线 | 亚洲无吗在线视频 | 中文字幕一区视频一线 | 国产精品久久久久久久成人午夜 | 久久99国产精品亚洲 | 日本最新免费不卡二区在线 | 午夜视频在线观看一区 | 色综久久天天综合绕视看 | 国产一区二区在免费观看 | 欧美日韩激情一区二区三区 | 色五月情 | 午夜欧美成人久久久久久 | 成年人免费在线视频观看 | 免费成人福利视频 | 欧美另类极品videosbest视 | 国产在线一区二区三区在线 | 国产在线拍揄自揄视精品不卡 | 色老板在线观看 | 国产愉拍精品视频手机 | 色婷婷中文字幕 | 欧美成人一级视频 | 极品美女一级毛片免费 | 国产成人精品一区 | 国内精品一区视频在线播放 | 国产亚洲精品国产福利在线观看 | 中文字幕91在线 | 亚洲国产精品久久人人爱 |