憨厚生

          ----Java's Slave----
          ***Java's Host***

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            165 隨筆 :: 17 文章 :: 90 評論 :: 0 Trackbacks
          轉(zhuǎn) http://www.cftea.com/c/751.asp

          我們這里說說四種瀏覽器對 document.body 的 clientHeight、offsetHeight 和 scrollHeight 的解釋,這里說的是 document.body,如果是 HTML 控件,則又有不同,點擊這里查看。

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

          文尾的重要說明比較重要,請注意。

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

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

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

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

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

          重要說明

          以上是在沒有指定 DOCTYPE 的情況下,如果指定了 DOCTYPE,比如:DTD XHTML 1.0 Transitional,則意義又會不同,在這種情況下這三個值都是同一個值,都表示內(nèi)容的實際高度。新版本的瀏覽器大多支持根據(jù)頁面指定的 DOCTYPE 來啟用不同的解釋器。下載或瀏覽測試文件。 如果要在指定的 DOCTYPE 下按上述意義來應用,怎么辦呢?答案是:將 document.body 和 document.documentElement 一起應用,比如:document.documentElement.scrollLeft || document.body.scrollLeft(一般將 document.documentElement 寫在前面),類似應用請參見:http://www.cftea.com/c/2008/06/U1FSRIC247DWTK2M.asp



          posted on 2009-07-21 17:44 二胡 閱讀(236) 評論(0)  編輯  收藏 所屬分類: JShtml
          主站蜘蛛池模板: 阳信县| 泗阳县| 卢龙县| 汉沽区| 新田县| 诸城市| 罗田县| 西青区| 商城县| 桑日县| 玉田县| 新宁县| 张北县| 本溪市| 手游| 理塘县| 凌海市| 满洲里市| 陵川县| 浏阳市| 乐陵市| 恩施市| 公安县| 石城县| 辽中县| 康乐县| 安平县| 札达县| 盐源县| 漯河市| 长子县| 临桂县| 内黄县| 青河县| 彝良县| 建平县| 邹城市| 法库县| 禹州市| 澄城县| 治多县|