jq获取元素位置

jquery获取当前元素的坐标

1,获取对象

var obj = $("#id号"); 或  var obj = $(this);

实例中我获取的对象是弹出窗口按钮,这样创建的新窗口就会根椐按钮的位置进行调整,实例中将创建的新窗口显示的按钮的右下角。   

  

2,获取对象元素的位置(offset()方法)   

var offset = obj.offset();   

获取对象元素的位置,分别是元素的top和left,调用方法是:offset.left和offset.top,可知当前对象的左部和顶部位置。   

此外,获取元素位置还可以用

var position = obj.position();

获取对象相对于父亲的位置,同样是元素的top和left,调用方法是:position.left和position.top

(

offset()和position()的区别:
 1.使用position()方法时事实上是把该元素当绝对定位来处理,获取的是该元素相当于最近的一个拥有绝对或者相对定位的父元素的偏移位         置。    
 2.使用position()方法时如果其所有的父元素都为默认定位(static)方式,则其处理方式和offset()一样,是当前窗口的相对偏移。
 3.使用offset()方法不管该元素如何定位,也不管其父元素如何定位,都是获取的该元素相对于当前视口的偏移。
     一般情况下,如果要显示的元素B存放在元素A的同一父元素下(即B为A的兄弟节点),这个时候使用position() 是最合适                    的;如果显示的元素B存放在DOM的最顶端或者最底端(即其父元素就是body)。这个时候用offset()是最好的。
        )  

3,获取对象元素的宽度(width()方法)   

var right = offset.left+obj.width();   

实例中是获取对象的右下角位置,创建新窗口的左部位置。   

  

4,获取对象元素的高度(height()方法)   

var down = offset.top+obj.height();   

实例中是获取对象的右下角位置,创建新窗口的顶部位置。

你可能感兴趣的:(前端综合)