九九色综合_性69交片免费看_亚洲一区二区三区久久精品_精品一久久_欧美一级黄视频_污免费网站

JavaScript 獲取窗口屬性

2018-8-3    seo達人

如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

獲取窗口屬性

  • 查看滾動條的滾動距離 
    • window.pageXOffset/pageYOffset 
      • IE8及IE8以下不兼容
    • document.body/documentElement.scrollLeft/scrollTop 
      • 兼容性比較混亂,同時取兩個值相加,因為不可能存在兩個同時有值
    • 封裝兼容性方法,求滾動輪滾動離getScrollOffset()

為了解決兼容性的問題,我們來封裝一個函數:

<script type="text/javascript">
    function getScrollOffset() {
        if(window.pageXOffset) { x : window.pageXoffset, y : window.pageYoffset }
        else{
            return { x : document.body.scrollLeft + document.documentElement.scrollLeft, y : document.body.scrollTop + document.documentElement.scrollTop,
            }
        }
    }
</script>
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 查看視口的尺寸 
    • window.innerWidth/innerHeight 
      • IE及IE8以下不兼容
    • document.documentElement.clientWidth/clientHeight 
      • 標準模式下,任意瀏覽器都兼容
    • document.body.clientWidth/clientHeight 
      • 適用于怪異模式(向后兼容)下的瀏覽器
    • 封裝兼容性方法,返回瀏覽器視口尺寸getViewportOffset()

為了解決兼容性的問題,我們來封裝一個函數:

<script type="text/javascript"> function getSViewportOffset() { if(window.innerWidth) { return {
                w : window.innerWidth,
                h : window.innerHeight
            }
        }else{ if(document.compatMode ==="BackCompat") { return {
                    w : document.body.clienWidth,
                    h : document.body.clientHeight
                }
            }else{ return {
                    w : document.documentElement.clientWidth,
                    h : document.documrntElement.clientHeight
                }
            }
    }
</script>
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 查看元素的幾何尺寸

    • domEle.getBoundingClientRect();
    • 兼容性很好
    • 該方法返回一個對象,對象里面有left,top,right,bottom等屬性。left和top代表該元素左上角的X和Y坐標,right和bottom代表元素右下角的X和Y坐標。
    • height和width屬性老版本IE不顯示(人為解決:分別相減一下就能得出)
    • 返回的結果并不是”實時的”
  • 讓滾動條滾動

    • window上有三個方法
    • scroll(x,y)在x軸、y軸上滾動的位置,scrollTo(x,y) 
      讓滾動條滾動到當前位置,而不是累加距離(這兩種方法是完全一樣的)
    • scrollBy();累加滾動距離
    • 三個方法功能類似,用法都是將x,y坐標傳入。即實現讓滾動條滾動到當前位置。
    • 區別:scrollBy()會在之前的數據基礎之上做累加。
    • eg:利用scroll()頁面定位功能。
    • eg:利用scrollBy()快速閱讀功能。

練習: 
做一個小閱讀器,會自動翻頁。

<!DOCTYPE html> <html> <head> <title>Document</title> </head> <body> 文本內容 <div style="width:100px;height:100px;background-color:orange;color:#fff;font-size:40px;text-align:center;line-height:100px;position:fixed;bottom:200px;right:50px;opcity:0.5;">start</div> <div style="width:100px;height:100px;background-color:orange;color:green;font-size:40px;text-align:center;line-height:100px;position:fixed;bottom:50px;right:50px;opcity:0.5;">stop</div> </body> <script type="text/javascript"> var start = document.getElement.getElementsByTagName('div')[0]; var stop = document.getElement.getElementsByTagName('div')[1]; var timer = 0; var key = true; //加鎖,防止連續點start產生累加加速 start.onclick = function() { if(key) {
            timer = setInterval(function() { window.scollBy(0,10);
            },100);
            key = false;
        }
    }
    stop.onclick = function() { clearInterval(timer);
        key = true;
    } </script>
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

日歷

鏈接

個人資料

藍藍設計的小編 http://m.gyxygd.cn

存檔

主站蜘蛛池模板: 啪视频网站| 99re热精品视频 | 亚洲综合色区图片区 | 国产精品一国产精品免费 | 91精品乱码一区二区三区 | 精品视频一区二区三区 | 天天操操操操 | 97精品久久 | 国产精品久久久久久久久久免费 | 欧美成人免费视频www | 国产精品久久久久一区二区三区 | jiz欧美高清 | 色欧美日韩 | a级片在线观看 | 久久精视频 | 亚洲成a人片在线观看中文!!! | 日韩精品无码久久一区二区三 | 成人在线精品视频 | 欧美日韩一级视频 | 嫩草影院播放地址一二三 | 久久久久成人精品免费播放动漫 | 日本大香伊一区二区三区 | 成人欧美在线视频 | 成人在线播放 | 欧美日韩精品在线视频 | 操伊人 | 国产一二三 | 操插视频| 欧美日韩免费一区 | 亚洲系列 | 中文字幕日韩在线 | 国产精品婷婷久久爽一下 | 天天爽 | 国产精品亚洲欧美一级久久精品 | 99一区二区 | 黄网站在线观看视频 | 亚洲综合日韩 | 色婷婷网| 成人av电影网址 | 在线成人精品视频 | 嘿咻18视频在线看 |