国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

淺談DOCTYPE對$(window).height()取值的影響

2019-11-20 09:26:25
字體:
供稿:網(wǎng)友

前言:公司項目需要用到一個彈框垂直居中,網(wǎng)上類似的垂直居中彈出層大同小異,因為項目是基于Jquery 下的,所以用$(window).height()-layer.height())/2 +$(document).scrollTop()取得垂直的位移。測了各種瀏覽器沒問題,后臺人員移值到項目中后,出問題了,當(dāng)頁面超出一屏?xí)r,在 chrome和FF下,彈出框不是在當(dāng)前屏的垂直居中,而是相對于整個網(wǎng)頁的居中。

查閱各方資料,所有結(jié)論都指出:

1.窗口高度,$(window).height()

2.文檔高度,$(document).height()

3.被卷起的高度,$(window).scrollTop()

找到原因:而后,發(fā)現(xiàn)后臺人員的頁面沒有設(shè)DOCTYPE,所以在chrome中,$(window).height()=$(document).height(),$(document).height()表示在網(wǎng)頁實際內(nèi)容高度沒有滿一屏?xí)r表示整個窗口的高度(窗口放大縮小時這個值會變化),頁當(dāng)超過一屏?xí)r表示為整個網(wǎng)頁內(nèi)容的實際高度,這點沒有異議,跟設(shè)不設(shè)DOCTYPE沒有影響。但是:$(window).height()在DOCTYPE為transitional.dtd時無論網(wǎng)頁內(nèi)容實際高度超不超出滿屏情況下,都等于是整個窗口的高度(窗口放大縮小時這個值會變化),如果沒有設(shè)DOCTYPE則$(window).height()=$(document).height(),在即當(dāng)內(nèi)容超一屏?xí)r$(window).height()為網(wǎng)頁實際高度,并不是所說的等于窗口高度。

解決辦法:

s要取得窗口的高度,只能根據(jù)DOCTYPE來做相應(yīng)的更改,在沒有設(shè)DOCTYPE時做如下處理

if($(document).height()>=$(window).height()){  _windowHeight=document.body.clientHeight;  }else{//alert($(window).height());  _windowHeight=$(document).height();  };

在有設(shè)DOCTYPE為transitional.dtd時,windowHeight=$(window).height()

以上這篇淺談DOCTYPE對$(window).height()取值的影響就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 汶上县| 满洲里市| 卓资县| 惠来县| 城市| 伊吾县| 南宫市| 密山市| 常宁市| 四会市| 德格县| 茂名市| 巴林左旗| 沙田区| 宁乡县| 县级市| 醴陵市| 汉寿县| 鄂伦春自治旗| 神木县| 县级市| 武城县| 壶关县| 嘉禾县| 屏东市| 宿迁市| 顺义区| 曲沃县| 汉寿县| 新沂市| 渭南市| 呈贡县| 循化| 朔州市| 兴宁市| 武威市| 正宁县| 定兴县| 南康市| 棋牌| 东乡族自治县|