首先标签position要设置成相对、绝对定位
然后获取元素
var dom = documentgetElementById("元素id")//你可以用其它方法获得
alert(domoffsetLeft)//left
alert(domoffsetTop)//top
这样就获得了,但是前提是它外层套的标签没有设置成相对、绝对定位的,否则位置是相对于那个标签的位置,这个就需要获取offsetParent 判断父级是谁了
用elementoffsetTop就可以了, 不过按照你的要求, 应该要做个循环
下面是代码
consolelog(getAbsoluteTop(documentgetElementById("test")));function getAbsoluteTop(ele){
var rtn = eleoffsetTop;
var o = eleoffsetParent;
while(o!=null)
{
rtn += ooffsetTop;
o = ooffsetParent;
}
return rtn;
}
你好,JS没有直接获取元素相对于页面的绝对坐标的方法。但是我们可以通过相关值的计算而得到。首先我们假设input元素ID为"J_MyInput",然后看下面代码注释:
var input = documentgetElementById('J_MyInput'); // 根据ID取得元素对象var sizeObj = inputgetBoundingClientRect(); // 取得元素距离窗口的绝对位置
// 窗口的滚动偏移(垂直、水平)
var bodyOffset = {top: documentbodyscrollTop, left: documentbodyscrollLeft};
// 元素相对于页面的绝对位置 = 窗口滚动偏移 + 元素相对于窗口的绝对位置
var inputOffsetTop = sizeObjtop + bodyOffsettop; // 距顶部
var inputOffsetLeft = sizeObjleft + bodyOffsetleft; // 距左侧
希望能解决你的问题,有疑问可追问,望采纳~
以上就是关于javascript 怎样取得标签的位置全部的内容,包括:javascript 怎样取得标签的位置、父元素以relative方式定位的子元素怎么用js获取子元素到网页顶部的距离、JS中怎么获取input所在页面的绝对坐标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)