耐心無止境 成功一瞬間

          BlogJava 聯(lián)系 聚合 管理
            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 閱讀(4223) 評論(0)  編輯  收藏 所屬分類: Web
          主站蜘蛛池模板: 镇康县| 永仁县| 静宁县| 乌鲁木齐县| 怀远县| 丘北县| 寿宁县| 明水县| 巴楚县| 阜宁县| 上蔡县| 延安市| 察雅县| 朝阳区| 莫力| 嘉义县| 叙永县| 北碚区| 山阳县| 嵩明县| 鄱阳县| 清河县| 台东县| 高州市| 阜平县| 镇沅| 高安市| 扎兰屯市| 韩城市| 屏南县| 九龙县| 依兰县| 万宁市| 库伦旗| 子长县| 邮箱| 东台市| 洞头县| 平阴县| 临湘市| 贵阳市|