jquery的height()和javascript的height總結(jié)扁眯,js獲取屏幕高度

引子

在javascript和jquery中翅帜,都有對各種高度的寫法藕甩,在這里周荐,我們就著重講一下窗口、文檔等高度的理解腋妙。(寬度和高度差不多骤素!)

jquery的各種高度

首先來說一說$(document)和$(window)匙睹,如下:

$(document).height();//整個(gè)網(wǎng)頁的高度
$(window).height();//瀏覽器可視窗口的高度
$(window).scrollTop();//瀏覽器可視窗口頂端距離網(wǎng)頁頂端的高度(垂直偏移)

用一句話理解就是:當(dāng)網(wǎng)頁滾動條拉到最低端時(shí)痕檬,

$(document).height() == $(window).height() + $(window).scrollTop()送浊。

注意,是拉到最低端唁桩!
當(dāng)網(wǎng)頁高度不足瀏覽器窗口時(shí)$(document).height()返回的是$(window).height()
假如您要獲取整個(gè)網(wǎng)頁的高度荒澡,不建議用$("html").height()单山、$("body").height()的高度,
原因:
$("body").height():body可能會有邊框饥侵,獲取的高度會比$(document).height()絮锷膨疏; $("html").height():在不同的瀏覽器上獲取的高度的意義會有差異钻弄,說白了就是瀏覽器不兼容。

說道這里饲帅,提及邊框和margin還有padding灶泵,我們自然想到了jquery的另外的兩個(gè)高度对途,那就是innerHeight()和outerHeight()

innerHeight()和outerHeight()不適用于window 和 document對象实檀,對于window 和 document對象可以使用.height()代替。innerHeight()和outerHeight()主要用來獲取標(biāo)簽的高度恬吕。

innerHeight()

enter image description here

innerHeight:高度+補(bǔ)白
outerHeight:高度+補(bǔ)白+邊框铐料,參數(shù)為true時(shí):高度+補(bǔ)白+邊框+邊距

innerHeight(value)
這個(gè)“value”參數(shù)可以是一個(gè)字符串(數(shù)字加單位)或者是一個(gè)數(shù)字,如果這個(gè)“value”參數(shù)只提供一個(gè)數(shù)字余赢,jQuery會自動加上像素單位(px)。如果只提供一個(gè)字符串扛拨,任何有效的CSS尺寸都可以為高度賦值(就像100px, 50%, 或者 auto)绑警。注意在現(xiàn)代瀏覽器中央渣,CSS高度屬性不包含padding, border, 或者 margin, 除非box-sizingCSS屬性被應(yīng)用北启。

jquery高度咕村,放到瀏覽器中試一下

alert($(window).height());                     //瀏覽器當(dāng)前窗口可視區(qū)域高度
alert($(document).height());                 //瀏覽器當(dāng)前窗口文檔的高度
alert($(document.body).height());        //瀏覽器當(dāng)前窗口文檔body的高度
alert($(document.body).outerHeight(true));  //瀏覽器當(dāng)前窗口文檔body的總高度 包括border padding margin
alert($(window).width());                         //瀏覽器當(dāng)前窗口可視區(qū)域?qū)挾?alert($(document).width());                     //瀏覽器當(dāng)前窗口文檔對象寬度
alert($(document.body).width());            //瀏覽器當(dāng)前窗口文檔body的寬度
alert($(document.body).outerWidth(true));  //瀏覽器當(dāng)前窗口文檔body的總寬度 包括border padding margin

javascript的各種高度

網(wǎng)頁可見區(qū)域?qū)抂僅針對body]: document.body.clientWidth
網(wǎng)頁可見區(qū)域高[僅針對body]: document.body.clientHeight
網(wǎng)頁可見區(qū)域?qū)抂僅針對body]: document.body.offsetWidth (包括滾動條和邊框懈涛,若滾動條和邊框?yàn)?批钠,則和clientWidth相等)
網(wǎng)頁可見區(qū)域高[僅針對body]: document.body.offsetHeight (包括滾動條和邊框得封,若滾動條和邊框?yàn)?呛每,則和clientHeight相等)
可視窗口寬度(包括滾動軸寬度):window.innerWidth; //IE9+、Chrome洋腮、Firefox啥供、Opera 以及 Safari
可視窗口高度库糠,不包括瀏覽器頂部工具欄: window.innerHeight;//IE9+瞬欧、Chrome艘虎、Firefox籍滴、Opera 以及 Safari
網(wǎng)頁正文全文寬(不包括滾動軸的寬度): document.body.scrollWidth
網(wǎng)頁正文全文高:document.body.scrollHeight
//假如網(wǎng)頁中沒有滾動軸候生,document.body.scrollWidth和window.innerWidth相等,document.body.scrollHeight和window.innerHeight相等须蜗。
網(wǎng)頁被卷去的高: document.body.scrollTop
網(wǎng)頁被卷去的左: document.body.scrollLeft
網(wǎng)頁正文部分上: window.screenTop
網(wǎng)頁正文部分左: window.screenLeft
屏幕分辨率的高(整個(gè)屏幕的高度): window.screen.height
屏幕分辨率的寬(整個(gè)屏幕的寬度): window.screen.width
屏幕可用工作區(qū)高度: window.screen.availHeight
屏幕可用工作區(qū)寬度: window.screen.availWidth
整個(gè)瀏覽器可用工作區(qū)高度: window.outerHeight
整個(gè)瀏覽器可用工作區(qū)寬度: window.outerWidth


結(jié)束語
注意唠粥,在運(yùn)用jquery的innerHeight()和outerHeight()的時(shí)候晤愧,可能會有瀏覽器的兼容問題,不同瀏覽器出現(xiàn)不同高度蛉腌,總之官份,實(shí)踐得真知,你可以測試一下烙丛,寫幾個(gè)小的demo舅巷,總結(jié)一下!
看完jquery和javascript的height,不知道您有何感想河咽,這篇文章希望對你有幫助钠右,可以留言相互交流,謝謝忘蟹!
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末飒房,一起剝皮案震驚了整個(gè)濱河市搁凸,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌狠毯,老刑警劉巖护糖,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件寝受,死亡現(xiàn)場離奇詭異,居然都是意外死亡痴怨,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進(jìn)店門反浓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人度迂,你說我怎么就攤上這事。” “怎么了钧萍?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵弛秋,是天一觀的道長遏佣。 經(jīng)常有香客問我意敛,道長稍刀,這世上最難降的妖魔是什么综膀? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任抓歼,我火速辦了婚禮,結(jié)果婚禮上取胎,老公的妹妹穿的比我還像新娘匪傍。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布邮辽。 她就那樣靜靜地躺著钞脂,像睡著了一般灵再。 火紅的嫁衣襯著肌膚如雪净薛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天,我揣著相機(jī)與錄音灵寺,去河邊找鬼慈缔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛右锨,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起址芯,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤录粱,失蹤者是張志新(化名)和其女友劉穎酬核,沒想到半個(gè)月后蔬螟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體旧巾,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡坐昙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拟枚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片恩溅。...
    茶點(diǎn)故事閱讀 40,664評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤贬媒,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布征堪,位于F島的核電站,受9級特大地震影響关拒,放射性物質(zhì)發(fā)生泄漏佃蚜。R本人自食惡果不足惜庸娱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望谐算。 院中可真熱鬧熟尉,春花似錦、人聲如沸洲脂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽腮考。三九已至雇毫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間踩蔚,已是汗流浹背棚放。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留馅闽,地道東北人飘蚯。 一個(gè)月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像福也,于是被迫代替她去往敵國和親局骤。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容

  • Window和document對象的區(qū)別 window對象window對象表示瀏覽器中打開的窗口window對象是...
    FConfidence閱讀 2,211評論 0 5
  • 通過jQuery暴凑,您可以選嚷退Α(查詢,query)HTML元素现喳,并對它們執(zhí)行“操作”(actions)凯傲。 jQuer...
    枇杷樹8824閱讀 659評論 0 3
  • Javascript: 網(wǎng)頁可見區(qū)域?qū)挘?document.body.clientWidth 網(wǎng)頁可見區(qū)域高: d...
    99538閱讀 279評論 0 1
  • 網(wǎng)頁可見區(qū)域?qū)挘篸ocument.body.clientWidth網(wǎng)頁可見區(qū)域高:document.body.cl...
    LuckyS007閱讀 662評論 0 0
  • 一、網(wǎng)絡(luò)基礎(chǔ)知識介紹 1嗦篱、為什么要學(xué)習(xí)網(wǎng)絡(luò)編程冰单? 在移動互聯(lián)網(wǎng)時(shí)代,移動應(yīng)用的特征有幾乎所有應(yīng)用l都需要用到網(wǎng)絡(luò)灸促,...
    AlanGe閱讀 530評論 0 0