浅谈jQuery的offset()方法及示例分享


Posted in Javascript onJuly 17, 2015

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

此方法返回或设置所匹配元素相对于document对象的偏移量。

语法结构一:

$(selector).offset()
获取匹配元素在当前document的相对偏移。
返回的对象包含两个整型属:top和left。
此方法只对可见元素有效。
实例代码:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">

<style type="text/css">
*{
 margin:0px;
 padding:0px;
}
.father{
 border:1px solid black;
 width:400px;
 height:300px;
 padding:10px;
 margin:50px;
}
.children{
 height:150px;
 width:200px;
 margin-left:50px;
 background-color:green;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 $("button").click(function(){
   a=$(".children").offset();
   alert("元素的偏移量坐标是:"+a.top+"|"+a.left+"");
  })
})
</script>
</head>
<body>
<div class="father">
 <div class="children"></div>
</div>
<button>获取元素的坐标</button>
</body>
</html>

以上代码可以弹出子div相对于document的偏移量。

语法结构二:

$(selector).offset(value)

设置匹配元素相对于document对象的坐标。
offset()方法可以让我们重新设置元素的位置。这个元素的位置是相对于document对象的。
如果对象原先的position样式属性是static的话,会被改成relative来实现重定位。
参数列表:

参数 描述
value 规定以像素计的 top 和 left 坐标。

可能的值:

1.值对,比如 {top:200,left:10}。
2.带有top和left 属性的对象。

实例代码:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">

<style type="text/css">
.father{
 border:1px solid black;
 width:400px;
 height:300px;
}
.children{
 height:150px;
 width:200px;
 background-color:green;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 $("button").click(function(){
  $(".children").offset({top:100,left:100})
 })
})
</script>
</head>
<body>
<div class="father">
 <div class="children"></div>
</div>
<button>点击设置偏移量</button>
</body>
</html>

以上代码可以设置div相对于document的偏移量。

语法结构三:

使用函数的返回值来设置偏移坐标:

$(selector).offset(function(index,oldoffset))
参数列表:

参数 描述
function(index,oldvalue) 规定返回被选元素新偏移坐标的函数:
index - 可选。元素的索引。
oldvalue - 可选。当前坐标。

实例代码:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<style type="text/css">
.father{
 border:1px solid black;
 width:400px;
 height:300px;
}
.children{
 height:150px;
 width:200px;
 background-color:green;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 $("button").click(function(){
  $(".children").offset(function(a,b){
   var newpoint= new Object();
   newpoint.top=b.top+50;
   newpoint.left=b.left+50;
   return newpoint;
  })
 })
})
</script>
</head>
<body>
<div class="father">
 <div class="children"></div>
</div>
<button>点击设置偏移量</button>
</body>
</html>

以上代码同样可以设置元素的偏移,不过值是通过函数返回。

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

Javascript 相关文章推荐
JavaScript 浮点数运算 精度问题
Oct 06 Javascript
javascript将数组插入到另一个数组中的代码
Jan 10 Javascript
js操纵跨frame的三级联动select下拉选项实例介绍
May 19 Javascript
jQuery.event兼容各浏览器的event详细解析
Dec 18 Javascript
javascript为下拉列表动态添加数据项
May 23 Javascript
微信小程序 Button 组件详解及简单实例
Jan 10 Javascript
jQuery插件HighCharts实现的2D面积图效果示例【附demo源码下载】
Mar 15 Javascript
JavaScript瀑布流布局实现代码
May 06 Javascript
jquery操作ul的一些操作笔记整理(干货)
Aug 31 jQuery
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
Jul 30 Javascript
vscode下的vue文件格式化问题
Nov 28 Javascript
Javascript异步执行不按顺序解决方案
Apr 30 Javascript
JavaScript用select实现日期控件
Jul 17 #Javascript
纯javascript制作日历控件
Jul 17 #Javascript
javascript生成不重复的随机数
Jul 17 #Javascript
jQuery实现径向动画菜单效果
Jul 17 #Javascript
jquery合并表格中相同文本的相邻单元格
Jul 17 #Javascript
用svg制作富有动态的tooltip
Jul 17 #Javascript
jquery实现根据浏览器窗口大小自动缩放图片的方法
Jul 17 #Javascript
You might like
PHP图片等比例缩放生成缩略图函数分享
2014/06/10 PHP
Smarty中的注释和截断功能介绍
2015/04/09 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
PHP中类属性与类静态变量的访问方法示例
2016/07/13 PHP
浅谈php fopen下载远程文件的函数
2016/11/18 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
js 实现打印网页中定义的部分内容的代码
2010/04/01 Javascript
Javascript获取当前日期的农历日期代码
2014/10/08 Javascript
Jquery使用css方法改变样式实例
2015/05/18 Javascript
JavaScript中使用concat()方法拼接字符串的教程
2015/06/06 Javascript
jQuery中inArray方法注意事项分析
2016/01/25 Javascript
深入探秘jquery瀑布流的实现
2016/01/30 Javascript
JS深度拷贝Object Array实例分析
2016/03/31 Javascript
AngularJs解决跨域问题案例详解(简单方法)
2016/05/19 Javascript
Bootstrap学习笔记之css样式设计(1)
2016/06/07 Javascript
浅谈Javascript数据属性与访问器属性
2016/07/26 Javascript
JavaScript之Canvas_动力节点Java学院整理
2017/07/04 Javascript
js 开发之autocomplete=&quot;off&quot;在chrom中失效的解决办法
2017/09/28 Javascript
node文字生成图片的示例代码
2017/10/26 Javascript
fullpage.js最后一屏滚动方式
2018/02/06 Javascript
Vue的路由动态重定向和导航守卫实例
2018/03/17 Javascript
js实现图片放大并跟随鼠标移动特效
2019/01/18 Javascript
Nodejs核心模块之net和http的使用详解
2019/04/02 NodeJs
Vue在H5 项目中使用融云进行实时个人单聊通讯
2020/12/14 Vue.js
python批量生成本地ip地址的方法
2015/03/23 Python
python通过socket查询whois的方法
2015/07/18 Python
python实现狄克斯特拉算法
2019/01/17 Python
Python实现操纵控制windows注册表的方法分析
2019/05/24 Python
Pytorch对Himmelblau函数的优化详解
2020/02/29 Python
Charlotte Tilbury澳大利亚官网:英国美妆品牌
2018/10/05 全球购物
请解释一下webService? 如何用.net实现webService
2014/06/09 面试题
mysql有关权限的表都有哪几个
2015/04/22 面试题
幼儿园感恩节活动方案
2014/10/06 职场文书
2014年采购工作总结
2014/11/20 职场文书
Python爬虫之爬取最新更新的小说网站
2021/05/06 Python
基于Python实现股票收益率分析
2022/04/02 Python