js或jquery怎样获取htm中div控件相对于页面的left和top值 起初我直接通过div.style.top来获取,但是这个div的style中并没有设置过top值,并且是相对位置,所以获取的值为空。 我要得到它相对于整个页面的坐标,怎样可行呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 offsetTop是相对于上一层的父容器的位置吧?我要的是相对于整个页面的坐标啊? <div id="test" style="position:absolute; left:100px; top:200px;">123</div><script>/** * 坐标 * @param x * @param y * @return */ function CPos(x, y) { this.x = x; this.y = y; } /** * 得到对象的相对浏览器的坐标 * @param ATarget * @return */ function GetObjPos(ATarget) { var target = ATarget; var pos = new CPos(target.offsetLeft, target.offsetTop); var target = target.offsetParent; while (target) { pos.x += target.offsetLeft; pos.y += target.offsetTop; target = target.offsetParent } return pos; } var obj = document.getElementById('test') alert(GetObjPos(obj)['y']) //y坐标 alert(GetObjPos(obj)['x']) //x坐标 </script>看看这个例子。。 PHP和JS的问题,求大神! 有10个textbox,怎样判断用户输入有没有重复? JQuer 设置坐标为什么 不改变呢 在线抢分 这个语句有什么错? 关于用JS取得DIV中的ID问题。。 如何在XSLT中调用JS js后面的参数a.js?time=123456 怎么获取time和123456 请问根据下拉列表中的内容选择页面是怎么实现的啊?谢谢! 请把下面的JSSCRIPT大小写转换程序转换成VBSCRIPT程序 切换“隐藏”和显示,Jquery应该怎么实现??? 为什么“Click”绑定补上? js赋值的小问题 用JS获取URL地址里面的内容
offsetTop是相对于上一层的父容器的位置吧?我要的是相对于整个页面的坐标啊?
<div id="test" style="position:absolute; left:100px; top:200px;">123</div>
<script>/**
* 坐标
* @param x
* @param y
* @return
*/
function CPos(x, y)
{
this.x = x;
this.y = y;
}
/**
* 得到对象的相对浏览器的坐标
* @param ATarget
* @return
*/
function GetObjPos(ATarget)
{
var target = ATarget;
var pos = new CPos(target.offsetLeft, target.offsetTop);
var target = target.offsetParent;
while (target)
{
pos.x += target.offsetLeft;
pos.y += target.offsetTop;
target = target.offsetParent
}
return pos;
}
var obj = document.getElementById('test')
alert(GetObjPos(obj)['y']) //y坐标
alert(GetObjPos(obj)['x']) //x坐标
</script>看看这个例子。。