欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Javascript 获取页面元素相对于电脑屏幕的坐标

程序员文章站 2022-05-27 08:01:55
...
这个没什么可说的,直接上代码,有需要的可以参考一下:
//获取元素绝对位置
function getAbsPosition(element)
{
    var abs={x:0,y:0}
	
    //如果浏览器兼容此方法
    if (document.documentElement.getBoundingClientRect) 
    {             
        //注意,getBoundingClientRect()是jQuery对象的方法
        //如果不用jQuery对象,可以使用else分支。
        abs.x = element.getBoundingClientRect().left;         
        abs.y = element.getBoundingClientRect().top;
		
        abs.x += window.screenLeft +  
                    document.documentElement.scrollLeft -            
                    document.documentElement.clientLeft;
        abs.y += window.screenTop +  
                    document.documentElement.scrollTop -  
                    document.documentElement.clientTop;
		
    } 
	
    //如果浏览器不兼容此方法
    else
    {
        while(element!=document.body)
        {
            abs.x+=element.offsetLeft;
            abs.y+=element.offsetTop;
            element=element.offsetParent;
        }
		
     //计算想对位置
     abs.x += window.screenLeft + 
            document.body.clientLeft - document.body.scrollLeft;
     abs.y += window.screenTop + 
            document.body.clientTop - document.body.scrollTop;
		
    }
	
    return abs;
}