zoukankan      html  css  js  c++  java
  • DOM基本操作

    1.查看滚动条的滚动距离

    document.body.scrollLeft与document.documentElement.scrollLeft是冲突的,一个有值另一个的值就为0,

    ▲兼容性比较混乱,同时取两个值相加,因为不可能存在两个同时有值

    so最兼容的写法就是document.body.scrollLeft+document.documentElement.scrollLeft

    window.pageXOffset/pageYOffset    IE8/IE8以下都不兼容,IE9以上才兼容

    举个例子:封装兼容性方法,求滚轮滚动离aa()

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title></title>
        D
    </head>
    <body>
    <div style=" 10000px; height: 23000px; background-color: #ddd;"></div>
    <script type="text/javascript">
        function aa() {
            //0 && window.pageXoffset代表失效,else是验证IE9以下
            if (  window.pageXOffset) {
                return {
                    x: window.pageXOffset,
                    y: window.pageYOffset
                }
            }
            else
                {
                    return {
                        x: document.body.scrollLeft + document.documentElement.scrollLeft,//二者只显示一个
                        y: document.body.scrollTop + document.documentElement.scrollTop
                    }
    
                }
    
        }
    </script>
    
    
    </body>
    </html>

    效果图:

    2.视口尺寸

    window.innerWidth/innerHeight     IE8/IE8以下都不兼容

    document.documentElement.clientWidth/clientHeight    标准模式下,任何浏览器都兼容

    document.body.clientWidth/clientHeight   适用于怪异模式下的浏览器(当html页面没有声明(<!DOCTYPE html>)是就是怪异模式)

    举个例子:

    封装兼容性方法,返回浏览器视口尺寸aa()

  • 相关阅读:
    LeetCode Best Time to Buy and Sell Stock
    LeetCode Scramble String
    LeetCode Search in Rotated Sorted Array II
    LeetCode Gas Station
    LeetCode Insertion Sort List
    LeetCode Maximal Rectangle
    Oracle procedure
    浏览器下载代码
    Shell check IP
    KVM- 存储池配置
  • 原文地址:https://www.cnblogs.com/huanghuali/p/8526335.html
Copyright © 2011-2022 走看看