jQuery获取某一元素位置
2017-08-08 本文已影响0人
是阿离
问题
想要获取某一元素最右侧中间位置坐标,以便根据此坐标完成另一个样式div展示
知识
在jQuery中有两种方式获取某一元素位置坐标:
- offset()
- position()
offset()
用来获取某一元素绝对位置
var itemTop = $('#itemID').offset().top; //获取的是#itemID元素最底下Y轴坐标
var itemLeft = $('#itemID').offset().left; //获取的是#itemID元素最左侧X轴坐标
没有.bottom
.right
方法,但如果使用不会报错,会直接返回一个undefined
position()
用来获取某一元素相对于父元素的位置,本次未使用,具体讲解可见参考文章:jquery获取html元素的绝对位置和相对位置的方法
另外,在解决该问题时,如果只确定绝对位置,仍未解决,如果要得到该元素最右侧中间位置坐标,需要确定该元素width
height
,在jQuery中为:
var itemWidth = $('#itemID').width();
var itemHeight = $('#itemID').height();
最终用来确定的坐标位置为:
(itemLeft+itemWidth, itemTop-(itemHeight/2))