• 事件对象


     var obox = document.querySelector(".box")
    
        obox.onclick = function(){
            console.log(1)
        }
    
        // 事件源:obox,触发事件的源头
        // 事件类型:onclick,通过什么行为触发事件
        // 事件处理函数:function,触发这个行为时,要做的事情
    
        // 事件对象:类似于一个秘书,在本次事件过程中,记录事件发生的所有信息
        // 默认不显示,需要手动获取
        // 只在事件中存在,没开始或结束后,没有事件对象
     var obox = document.querySelector(".box")
    
        谷歌: // obox.onclick = function(abc){
        //     console.log(abc)
        // }
        IE:// obox.onclick = function(){
        //     console.log(window.event)
        // }
    二者兼容:   为什么要搞兼容,因为事件在ie和谷歌的表示方法不一样,有可能在ie显示不出来,ie必须输出window.event。谷歌任意传入个参数,输出这个参数就行
    obox.onclick
    = function(eve){ var e = eve || window.event; console.log(e) }
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
        <style>
            .box{100px;height:100px;background: red;}
        </style>
    </head>
    <body style="height: 1000px">
        <div class="box"></div>
    </body>
    <script>
        // 事件对象身上的属性?
    
        var obox = document.querySelector(".box")
    
         obox.onclick = function(eve){
             var e = eve || window.event;
    //         鼠标相对于事件源的坐标
             console.log(e.offsetX) //0
             console.log(e.offsetY) //1
    
    //         鼠标相对于页面的可视区域的坐标
             console.log(e.clientX) //页面往下拉距离就变了
             console.log(e.clientY)
    
    //         鼠标相对于页面的坐标
             console.log(e.pageX)  //就是把页面往下拉,他的距离不会变
             console.log(e.pageY)
    
    //         鼠标相对于屏幕的坐标
             console.log(e.screenX)
             console.log(e.screenY)
     
    // 事件类型 console.log(e.type) //click
    // 跟着事件走 console.log(e.target) //<div class="box"></div> // 跟着函数走 console.log(this) //同上 } obox.onmousedown = function(eve){ var e = eve || window.event; console.log(e.button) 鼠标左键1 右键3 中间2 console.log(e.buttons) 左右中1,2,4 } </script> </html>
    
    
  • 相关阅读:
    【设计模式】 五大原则
    RFC
    Linux虚拟服务器--LVS
    Git fast forward提交
    Fighting regressions with git bisect---within git bisect algorithm
    Git bare repo with multiple branches
    英特尔和Red Hat合作实现Gnome桌面的Wayland支持
    如何成为一个Linux内核开发者
    Terminal emulator
    bootstrap基础学习【网格系统】(三)
  • 原文地址:https://www.cnblogs.com/hy96/p/11413839.html
Copyright © 2020-2023  润新知