获取元素和鼠标的位置(兼容IE6.0,IE7.0,IE8.0,FireFox2.0,FireFox3.5,Opera)

 获取元素和鼠标的位置(兼容IE6.0,IE7.0,IE8.0,FireFox2.0,FireFox3.5,Opera),该功能是我一同事钻研出来的,目标是为了实现与QQ自定义布局和拖放模块类似的功能。

//获取元素的位置
    function getLeft(obj) {
        if (obj == null)
            return null;
        var mendingObj = obj;
        var mendingLeft = mendingObj.offsetLeft;
        while (mendingObj != null && mendingObj.offsetParent != null && mendingObj.offsetParent.tagName != "BODY") {
            mendingLeft = mendingLeft + mendingObj.offsetParent.offsetLeft;
            mendingObj = mendingObj.offsetParent;
        }

        return mendingLeft;
    };
    function getTop(obj) {
        if (obj == null)
            return null;
        var mendingObj = obj;
        var mendingTop = mendingObj.offsetTop;
        while (mendingObj != null && mendingObj.offsetParent != null && mendingObj.offsetParent.tagName != "BODY") {
            mendingTop = mendingTop + mendingObj.offsetParent.offsetTop;
            mendingObj = mendingObj.offsetParent;
        }
        return mendingTop;
    };
    //获取鼠标的位置
    function getMousePosition(event) {
        var position = {
            MouseX: 0,
            MouseY: 0
        }
        if (event.pageX != undefined) {
            position.MouseX = event.pageX;
            position.MouseY = event.pageY;
        }
        else {
            var target = EventUtil.getTarget(event);
            position.MouseX = event.offsetX + getLeft(target);
            position.MouseY = event.offsetY + getTop(target);

        }
        return position;

转载于:https://www.cnblogs.com/pkurain/archive/2009/12/15/1624676.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值