浅谈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 相关文章推荐
JS类定义原型方法的两种实现的区别评论很多
Sep 12 Javascript
javascript实现仿百度图片的瀑布流加载效果
Apr 20 Javascript
详解Node.Js如何处理post数据
Sep 19 Javascript
Bootstrap缩略图与警告框学习使用
Feb 08 Javascript
详谈jQuery Ajax(load,post,get,ajax)的用法
Mar 02 Javascript
深入解析js轮播插件核心代码的实现过程
Apr 14 Javascript
详解react-webpack2-热模块替换[HMR]
Aug 03 Javascript
javascript将list转换成树状结构的实例
Sep 08 Javascript
easyui下拉框动态级联加载的示例代码
Nov 29 Javascript
Vue项目实现简单的权限控制管理功能
Jul 17 Javascript
vue element-ui读取pdf文件的方法
Nov 26 Javascript
JavaScript对象原型链原理解析
Jan 22 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判断字符串长度的两种方法很实用
2015/09/22 PHP
记录一次排查PHP脚本执行卡住的问题
2016/12/27 PHP
utf8的编码算法 转载
2006/12/27 Javascript
jQuery 使用手册(三)
2009/09/23 Javascript
juqery 学习之三 选择器 简单 内容
2010/11/25 Javascript
js遍历子节点子元素附属性及方法
2014/08/19 Javascript
node.js中的events.emitter.once方法使用说明
2014/12/10 Javascript
node.js中的fs.chmodSync方法使用说明
2014/12/18 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件体系结构
2015/11/19 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
2017/01/17 Javascript
bootstarp modal框居中显示的实现代码
2017/02/18 Javascript
原生JS实现的跳一跳小游戏完整实例
2019/01/27 Javascript
JavaScript数组去重的方法总结【12种方法,号称史上最全】
2019/02/28 Javascript
小程序云函数调用API接口的方法
2019/05/17 Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
2019/08/28 Javascript
webpack打包优化的几个方法总结
2020/02/10 Javascript
微信小程序仿抖音视频之整屏上下切换功能的实现代码
2020/05/24 Javascript
[01:04:48]VGJ.S vs TNC Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
python实现连接mongodb的方法
2015/05/08 Python
python统计文本字符串里单词出现频率的方法
2015/05/26 Python
深入理解Python中命名空间的查找规则LEGB
2015/08/06 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
2018/10/31 Python
Python生成指定数量的优惠码实操内容
2019/06/18 Python
python实现一行输入多个值和一行输出多个值的例子
2019/07/16 Python
Python守护进程实现过程详解
2020/02/10 Python
Python常用库Numpy进行矩阵运算详解
2020/07/21 Python
CSS3 开发工具收集
2010/04/17 HTML / CSS
HTML5安全介绍之内容安全策略(CSP)简介
2012/07/10 HTML / CSS
波兰数码相机及配件网上商店: Cyfrowe.pl
2017/06/19 全球购物
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
运动会标语
2014/06/21 职场文书
体育专业大学生职业生涯规划范文:打造自己的运动帝国
2014/09/12 职场文书
2015年乡镇环保工作总结
2015/04/22 职场文书
护理自荐信
2019/05/14 职场文书
python本地文件服务器实例教程
2021/05/02 Python
MySQL GRANT用户授权的实现
2021/06/18 MySQL