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

首頁 > 開發(fā) > JS > 正文

javascript知識點收藏

2024-09-06 12:43:19
字體:
供稿:網(wǎng)友
1.四種瀏覽器對 document.body 的 clientHeight、offsetHeight 和 scrollHeight 的解釋。

這四種瀏覽器分別為IE(Internet Explorer)、NS(Netscape)、Opera、FF(FireFox)。

clientHeight
大家對 clientHeight 都沒有什么異議,都認(rèn)為是內(nèi)容可視區(qū)域的高度,也就是說頁面瀏覽器中可以看到內(nèi)容的這個區(qū)域的高度,一般是最后一個工具條以下到狀態(tài)欄以上的這個區(qū)域,與頁面內(nèi)容無關(guān)。

offsetHeight
IE、Opera 認(rèn)為 offsetHeight = clientHeight + 滾動條 + 邊框。
NS、FF 認(rèn)為 offsetHeight 是網(wǎng)頁內(nèi)容實際高度,可以小于 clientHeight。

scrollHeight
IE、Opera 認(rèn)為 scrollHeight 是網(wǎng)頁內(nèi)容實際高度,可以小于 clientHeight。
NS、FF 認(rèn)為 scrollHeight 是網(wǎng)頁內(nèi)容高度,不過最小值是 clientHeight。

簡單地說
clientHeight 就是透過瀏覽器看內(nèi)容的這個區(qū)域高度。
NS、FF 認(rèn)為 offsetHeight 和 scrollHeight 都是網(wǎng)頁內(nèi)容高度,只不過當(dāng)網(wǎng)頁內(nèi)容高度小于等于 clientHeight 時,scrollHeight 的值是 clientHeight,而 offsetHeight 可以小于 clientHeight。
IE、Opera 認(rèn)為 offsetHeight 是可視區(qū)域 clientHeight 滾動條加邊框。scrollHeight 則是網(wǎng)頁內(nèi)容實際高度。

同理
clientWidth、offsetWidth 和 scrollWidth 的解釋與上面相同,只是把高度換成寬度即可。

但是
FF 在不同的 DOCTYPE 中對 clientHeight 的解釋不同, xhtml 1 trasitional 中則不是如上解釋的。其它瀏覽器則不存在此問題。


2.JS取clientHeight與scrollTop
先來段數(shù)據(jù),下表的值為document.body.clientHeight / document.documentElement.clientHeight

             IE               FF
Html       608/0          630/11096
Xhtml     10942/591    11076/630

在html/xhtml與ie/ff這4種排列組合下,取得的clientHeight幾乎沒有一樣的,可見寫一段兼容3種瀏覽器兩種頁面標(biāo)準(zhǔn)的js腳本有多頭疼。

暫時總結(jié)的判斷方法如下:
var h1 = document.body.clientHeight;
var h2 = document.documentElement.clientHeight;
var isXhtml = (h2<=h1&&h2!=0)?true:false; //判斷當(dāng)前頁面的Doctype是否為Xhtml
var body = isXhtml?document.documentElement:document.body;
alert(body.clientHeight); //最終結(jié)果比較一致

安全的取到scrollTop:
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 沈丘县| 宜兰市| 民乐县| 资中县| 油尖旺区| 和硕县| 万全县| 阿鲁科尔沁旗| 商南县| 福建省| 平罗县| 玉田县| 遂溪县| 四川省| 丹巴县| 新津县| 黄骅市| 商城县| 庆元县| 壶关县| 申扎县| 闽清县| 武穴市| 奇台县| 曲水县| 迭部县| 阿荣旗| 招远市| 宜州市| 永嘉县| 陆良县| 江川县| 青阳县| 江都市| 江城| 桑植县| 乌鲁木齐市| 宝坻区| 北流市| 大厂| 正镶白旗|