zoukankan      html  css  js  c++  java
  • clientX、offsetX、screenX、pageX、x的区别

     

    鼠标事件以及clientX、offsetX、screenX、pageX、x的区别

    来源:https://blog.csdn.net/weixin_41342585/article/details/80659736

    图片来源:https://www.cnblogs.com/deerfig/p/6432683.html

         // content
            $('.demo1').width()
            // content+padding
            $('.demo1').innerWidth();//200+100*2
            // content+padding+border
            $('.demo1').outerWidth();//200+100*2+5*2
            // content+padding+border+margin
            $('.demo1').outerWidth(true);//200+100*2+5*2+5*2
    height,innerHeight(),outerHeight(),outerHeight(true)同理。
    一下图片转自:https://www.imooc.com/article/17571
    "clientHeight": content + padding,(注:对于inline的元素这个属性一直是0,单位px,只读元素。)
    "offsetHeight": content + padding + border + 水平滚动条宽度,(对于inline的元素这个属性一直是0,单位px,只读元素。)
    "scrollHeight": 
    "scrollTop": 

     "offsetTop"

    网页可见区域高:document.body.clientHeight

    网页正文全文高:document.body.scrollHeight
    网页可见区域高(包括边线的高):document.body.offsetHeight
    网页被卷去的高:document.body.scrollTop

    屏幕分辨率高:window.screen.height

     

    测试

    <!DOCTYPE HTML>
    <html lang="zh-cn">
    
    <head>
        <meta charset="utf-8" />
        <title>Javascript</title>
        <style>
            body {
                margin: 0;
                padding: 0;
                background: #ccc;
                font-size: 12px;
                overflow: auto
            }
    
            .main {
                width: 500px;
                height: 330px;
                position: relative;
                margin: 250px auto 0;
                background-color: #eee;
            }
    
            .box {
                position: absolute;
                width: 220px;
                height: 180px;
                background-color: orange;
                top: 80px;
                left: 80px;
            }
        </style>
    </head>
    
    <body style="height:1600px;">
        <div class="main">
            <div class="box" id="box"></div>
        </div>
    
        <script>
            var oBox = document.getElementById('box');
    
            window.onload = function () {
    
                oBox.onmousedown = function (ev) {
                    ev = ev || window.event;
    
                    console.log('ev.offsetX, ev.offsetY',ev.offsetX, ev.offsetY);
                    console.log('ev.clientX, ev.clientY',ev.offsetX, ev.offsetY);
                    console.log('ev.pageX, ev.pageY',ev.pageX, ev.pageY);
                    console.log('ev.screenX, ev.screenY', ev.pageX, ev.pageY);
                    console.log('ev.layerX, ev.layerY', ev.pageX, ev.pageY);
                    console.log('ev.x, ev.y',ev.pageX, ev.pageY);
                }
            }
    
        </script>
    </body>
    
    </html>
     
  • 相关阅读:
    Coursera台大机器学习课程笔记8 -- Linear Regression
    近两年跟踪速度较快的算法小结(转)
    hdu 4278 Faulty Odometer
    hdu 2571 命运
    hdu 6168 Numbers
    Codeforces 888C:K-Dominant Character
    poj 3061 Subsequence
    poj 1852 Ants
    1115. Counting Nodes in a BST (30)
    1064. Complete Binary Search Tree (30)
  • 原文地址:https://www.cnblogs.com/zhizhi0810/p/10815618.html
Copyright © 2011-2022 走看看