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

clientHeight大家對 clientHeight 都沒有什么異 " /> 国产精品自在线拍,99视频在线国产,欧美一区二区三区综合色视频

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

javascript知識點收藏

1.四種瀏覽器對 document.body 的 clientHeight、offsetHeight 和 scrollHeight 的解釋。

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

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

offsetHeight
IE、Opera 認為 offsetHeight = clientHeight + 滾動條 + 邊框。
NS、FF 認為 offsetHeight 是網頁內容實際高度,可以小于 clientHeight。

scrollHeight
IE、Opera 認為 scrollHeight 是網頁內容實際高度,可以小于 clientHeight。
NS、FF 認為 scrollHeight 是網頁內容高度,不過最小值是 clientHeight。

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

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

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


2.JS取clientHeight與scrollTop
先來段數據,下表的值為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種瀏覽器兩種頁面標準的js腳本有多頭疼。

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

安全的取到scrollTop:
document.body.scrollTop + document.documentElement.scrollTop

判斷瀏覽器的類型,這種寫法挺喜歡的:
var ua = navigator.userAgent.toLowerCase ();
var os = new Object();
os.isFirefox = ua.indexOf ("gecko") != -1;
os.isOpera = ua.indexOf ("opera") != -1;
os.isIE = !os.isOpera && ua.indexOf ("msie") != -1;


3.js取到flash對象方法匯總

IE, FF, Maxthon用document.getElementById(id)
Opera用 document.embeds(id)

var isOpera=(window.opera&&navigator.userAgent.match(/opera/gi))?true:false;

if(isOpera){
var oswf = document.embeds('ad_flipper_swf');
}else{
var oswf = document.getElementById('ad_flipper_swf');
}


4.js執行順序
1.同級的不同的代碼塊,代碼塊間的執行順序為從上到下;
2.在代碼中嵌入代碼的情況下,先執行上層代碼塊,再執行子代碼塊;代碼中嵌入代碼
是指一個文件引入另一個文件,而不是指所有的通過document.write形式打出的代碼。

JavaScript技術javascript知識點收藏,轉載需保留來源!

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

主站蜘蛛池模板: 91aaa免费观看在线观看资源 | 亚洲美女视频网址 | 日本成人社区 | 欧美激情视频在线观看 | 欧美日本韩国一区 | 日韩中文有码高清 | 亚洲欧洲色天使日韩精品 | 色哟哟小说 | 国产成人盗摄精品 | 国产自产c区 | 日韩欧美亚洲国产精品字幕久久久 | 国产在线视频h | 国产成人精品福利网站在线观看 | 国产精品国产色综合色 | 国产小视频在线 | 91热精品视频 | 国产伦精品一区二区三区 | 91视频视频 | 中文字幕久久网 | 国产线视频精品免费观看视频 | 国产男女视频 | 99午夜视频 | 激情小说专区 | 国产精品亚洲一区二区三区在线观看 | 中文字幕一区二区三区在线播放 | 亚洲尹人香蕉网在线视颅 | 精品伊人久久大线蕉色首页 | 131美女一区二区三区视频 | 91精品全国免费观看含羞草 | 四虎影视精品永久免费网站 | 91国在线视频 | 久久久久这里只有精品 | 国产女人在线 | 色噜噜狠狠在爱丁香 | 亚洲图片欧美日韩 | 亚洲六月丁香六月婷婷蜜芽 | 欧美成人v视频免费看 | 国产精品视频福利 | 性欧美女人 | 日本乱人伦片中文字幕三区 | 成人观看的视频三级 |