jQuery的position()方法详解


Posted in Javascript onJuly 19, 2015

position()方法的定义和用法:

此方法获取匹配元素相对某些元素的偏移量。

返回的对象包含两个整型属性(top和left)的对象。

此方法只对可见元素有效。

语法结构:

$(selector).position()

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

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

2.如果父辈元素中有采用定位的,那么偏移量的参考对象为距离它最近的采用定位的元素,

实例代码:

<!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>

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

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
Nov 11 Javascript
JS常用表单验证方法总结
May 22 Javascript
jquery ui dialog替代confirm实例分析
Jan 25 Javascript
JavaScript的React框架中的JSX语法学习入门教程
Mar 05 Javascript
原生JavaScript编写canvas版的连连看游戏
May 29 Javascript
详解用vue.js和laravel实现微信支付
Jun 23 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
Oct 12 Javascript
vue中axios处理http发送请求的示例(Post和get)
Oct 13 Javascript
Vue2 模板template的四种写法总结
Feb 23 Javascript
Vue路由守卫之路由独享守卫
Sep 25 Javascript
Vue的Eslint配置文件eslintrc.js说明与规则介绍
Feb 03 Javascript
javascript中闭包closure的深入讲解
Mar 03 Javascript
ExtJs动态生成treepanel的Json格式
Jul 19 #Javascript
javascript中mouseover、mouseout使用详解
Jul 19 #Javascript
javascript实现的简单计时器
Jul 19 #Javascript
javascript中setInterval的用法
Jul 19 #Javascript
js中跨域方法原理详解
Jul 19 #Javascript
javascript获取网页宽高方法汇总
Jul 19 #Javascript
jQuery获取URL请求参数的方法
Jul 18 #Javascript
You might like
PHP - Html Transfer Code
2006/10/09 PHP
用cookies来跟踪识别用户
2006/10/09 PHP
php实例分享之html转为rtf格式
2014/06/02 PHP
深入浅析PHP无限极分类的案例教程
2016/05/09 PHP
AJAX PHP无刷新form表单提交的简单实现(推荐)
2016/09/09 PHP
PHP实现基于状态的责任链审批模式详解
2019/05/31 PHP
PHP中的自动加载操作实现方法详解
2019/08/06 PHP
JavaScript中的null和undefined解析
2012/04/14 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
JavaScript设计模式之工厂模式和构造器模式
2015/02/11 Javascript
JS实现双击屏幕滚动效果代码
2015/10/28 Javascript
深入浅析JavaScript中prototype和proto的关系
2015/11/15 Javascript
Javascript基于对象三大特性(封装性、继承性、多态性)
2016/01/04 Javascript
js获取Html元素的实际宽度高度的方法
2016/05/19 Javascript
select下拉框插件jquery.editable-select详解
2017/01/22 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解
2019/08/16 Javascript
javascript实现蒙版与禁止页面滚动
2020/01/11 Javascript
JavaScript异步操作的几种常见处理方法实例总结
2020/05/11 Javascript
微信小程序单选框自定义赋值
2020/05/26 Javascript
[01:04:01]2014 DOTA2华西杯精英邀请赛5 24 DK VS VG
2014/05/25 DOTA
Python爬虫爬验证码实现功能详解
2016/04/14 Python
Python常用内置模块之xml模块(详解)
2017/05/23 Python
python自动12306抢票软件实现代码
2018/02/24 Python
对python读写文件去重、RE、set的使用详解
2018/12/11 Python
Python通过Pillow实现图片对比
2020/04/29 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
使用HTML5中的contentEditable来将多行文本自动增高
2016/03/01 HTML / CSS
Finishline官网:美国一家领先的运动品牌鞋类、服装零售商
2016/07/20 全球购物
2014自荐信的写作技巧
2014/01/28 职场文书
初一学生评语大全
2014/04/24 职场文书
2015年党小组工作总结
2015/05/26 职场文书
小马王观后感
2015/06/11 职场文书
学长教您写论文:经验总结
2019/07/09 职场文书
大学生,三分钟即兴演讲稿
2019/07/22 职场文书
Windows下redis下载、redis安装及使用教程
2021/06/02 Redis