html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

jQuery的position()方法详解_jquery_

[ ] 已经帮助:人解决问题

position()方法的定义和用法:E98HTML5中文学习网 - HTML5先行者学习网

此方法获取匹配元素相对某些元素的偏移量。E98HTML5中文学习网 - HTML5先行者学习网

返回的对象包含两个整型属性(top和left)的对象。E98HTML5中文学习网 - HTML5先行者学习网

此方法只对可见元素有效。E98HTML5中文学习网 - HTML5先行者学习网

语法结构:E98HTML5中文学习网 - HTML5先行者学习网

$(selector).position()

在教程的开头之所以说是获取匹配元素相对于某些元素的偏移量。很多教程都说方法返回的偏移量是相对于父元素,其实并非完全如此,此方法会将匹配元素以绝对定位方式处理,当然并不是说真的将匹配元素设置为绝对定位。方法的偏移量参考原则如下:E98HTML5中文学习网 - HTML5先行者学习网

1.如果父辈元素中没有采用定位的(position属性值为relative、absolute或者fixed),那么偏移量参考对象为窗口。E98HTML5中文学习网 - HTML5先行者学习网

2.如果父辈元素中有采用定位的,那么偏移量的参考对象为距离它最近的采用定位的元素,E98HTML5中文学习网 - HTML5先行者学习网

实例代码:E98HTML5中文学习网 - HTML5先行者学习网

<!DOCTYPE html><html><head><meta charset=" utf-8"><style type="text/css">*{ margin:0px; padding:0px;}.father{ background-color:green; width:200px; height:200px; padding:50px; margin-bottom:50px; margin-left:100px;}.children{ height:150px; width:150px; background-color:red; line-height:150px; text-align:center;}</style><script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script><script type="text/javascript">$(document).ready(function(){ $(".children").each(function(){  var text;  text="left:"+$(this).position().left;  text+="top:"+$(this).position().top;  $(this).text(text); })})</script></head><body><div class="father" style="position:relative"> <div class="children"></div></div><div class="father"> <div class="children"></div></div></body></html>

在以上代码中顶部组合,由于父元素采用的是相对定位,那么获取的偏移量就是相对于父元素的。在底部的组合中,由于父元素没有采用定位,那么偏移量参考对象就是窗口。E98HTML5中文学习网 - HTML5先行者学习网

以上所述就是本文的全部内容了,希望大家能够喜欢。E98HTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助