• 鼠标参数,事件对象,获取鼠标在网页中的坐标


    1. 事件对象 event

    标准浏览器 传递给响应函数

    IE 把 event 事件对象作为全局对象 window 的一个属性

     

    2. 浏览器滚动条高度

    标准浏览器 使用 documen.documentElement.scrollLeft    documen.documentElement.scrollTop 

    Safari 等浏览器 使用 window.pageXOffset    window.pageYOffset

    没有 doctype 声明的页面 document.body.scrollLeft    document.body.scrollTop

     

    3. 获取鼠标在网页中的坐标 = 鼠标在视窗中的坐标 + 浏览器滚动条坐标

    // 鼠标事件参数    兼容性封装 Test Already.
    var kjfMouse = {
        getEvent : function(e){
            return e || window.event;
        },
        
        getTarget : function(e){
            return this.getEvent(e).target || this.getEvent(e).srcElement;
        },
        
        getClientX : function(e){
            return this.getEvent(e).clientX;
        },
        
        getClientY : function(e){
            return this.getEvent(e).clientY;
        },
        
        // 水平滚动条偏移
        getScrollLeft : function(){
            return  document.documentElement.scrollLeft ||    // 火狐 IE9及以下滚动条是HTML的
                    window.pageXOffset ||                     // IE10及以上 window.pageXOffset
                    document.body.scrollLeft;                 // chrome 滚动条是body的
        },
        
        // 垂直滚动条偏移
        getScrollTop : function(){
            return  document.documentElement.scrollTop ||    // 火狐 IE9 及以下滚动条是 HTML 的
                    window.pageYOffset ||                    // IE10 及以上 window.pageXOffset
                    document.body.scrollTop;                 // chrome 滚动条是body的
        },
        
        getPageX : function(e){
            return (this.getEvent(e).pageX)?( this.getEvent(e).pageX ):( this.getClientX(e)+this.getScrollLeft() );
        },
        
        getPageY : function(e){
            return (this.getEvent(e).pageY)?( this.getEvent(e).pageY ):( this.getClientY(e)+this.getScrollTop() );
        }
    };
    --------小尾巴 ________一个人欣赏-最后一朵颜色的消逝-忠诚于我的是·一颗叫做野的心.决不受人奴役.怒火中生的那一刻·终将结束...
  • 相关阅读:
    【知识整理】这可能是最好的性能优化教程(一)
    【工作感悟】Android 开发者,如何提升自己的职场竞争力?
    MySql 主从复制
    MyCat 介绍、分片规则、调优的内容收集
    MyCat 安装部署,实现数据库分片存储
    [转]Activemq管理和基本介绍
    [转]ActiveMQ 即时通讯服务 浅析
    Redis 3.0集群 Window搭建方案
    【转】史上最全的“大数据”学习资源整理
    【转】【漫画解读】HDFS存储原理
  • 原文地址:https://www.cnblogs.com/tianxiaxuange/p/9873771.html
Copyright © 2020-2023  润新知