耐心無止境 成功一瞬間

          BlogJava 聯系 聚合 管理
            31 Posts :: 5 Stories :: 25 Comments :: 0 Trackbacks

          做頁面的時候可能會用到位置固定的層,讀取 document.body.scrollTop 來設置層的位置,像這樣:

          window.onscroll = function ()
          {
          var oFix = document.getElementById("divfix");
          oFix.style.top = document.body.scrollTop + "px";
          }

          可是怎么沒有達到預期效果呢,輸出 document.body.scrollTop 的值一看,一直都是 0。原來是 DTD 的問題,要是頁面直接用 開頭的話就沒有問題了。但是要符合 web 標準,DTD 當然是不能少的。具有 DTD 時用 document.documentElement.scrollTop 代替 document.body.scrollTop 就可以了。

          window.onscroll = function ()
          {
          var oFix = document.getElementById("divfix");
          oFix.style.top = document.documentElement.scrollTop + "px";
          }

          編者注:

          • 頁面具有 DTD(或者說指定了 DOCTYPE)時,使用 document.documentElement。
          • 頁面不具有 DTD(或者說沒有指定了 DOCTYPE)時,使用 document.body。
          • 在 IE 和 Firefox 中均是如此。
          • 為了兼容,可以使用如下代碼:
            var scrollTop = window.pageYOffset 
                            || document.documentElement.scrollTop 
                            || document.body.scrollTop 
                            || 0;

          轉自:http://www.cftea.com/c/2008/06/U1FSRIC247DWTK2M.asp
          posted on 2008-08-29 17:00 Joshua Yan 閱讀(4219) 評論(0)  編輯  收藏 所屬分類: Web
          主站蜘蛛池模板: 肥乡县| 买车| 万安县| 磐石市| 中山市| 肥西县| 松溪县| 九台市| 郎溪县| 淳安县| 定结县| 自贡市| 佳木斯市| 贵定县| 德化县| 维西| 余干县| 大方县| 灵寿县| 诸暨市| 汕头市| 巴里| 于都县| 剑河县| 山西省| 秦皇岛市| 庆云县| 兖州市| 遂宁市| 富民县| 汝城县| 嘉黎县| 武胜县| 永顺县| 芜湖县| 阜城县| 万州区| 保德县| 江口县| 宁波市| 仁布县|