浅谈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 相关文章推荐
Prototype使用指南之range.js
Jan 10 Javascript
isArray()函数(JavaScript中对象类型判断的几种方法)
Nov 26 Javascript
ASP.NET jQuery 实例4(复制TextBox的文本到本地剪贴板上)
Jan 13 Javascript
jquery实现图片灯箱明暗的遮罩效果
Nov 15 Javascript
JavaScript每天定时更换皮肤样式的方法
Jul 01 Javascript
基于JavaScript代码实现pc与手机之间的跳转
Dec 23 Javascript
基于javascript实现随机颜色变化效果
Jan 14 Javascript
javascript实现倒计时跳转页面
Jan 17 Javascript
DOM中事件处理概览与原理的全面解析
Aug 16 Javascript
js操作二进制数据方法
Mar 03 Javascript
ZK中使用JS读取客户端txt文件内容问题
Nov 07 Javascript
避坑之 JavaScript 中的toFixed()和正则表达式
Apr 19 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
IP攻击升级,程序改进以对付新的攻击
2010/11/23 PHP
php数组函数序列之krsort()- 对数组的元素键名进行降序排序,保持索引关系
2011/11/02 PHP
php循环创建目录示例分享(php创建多级目录)
2014/03/04 PHP
ThinkPHP模板判断输出Empty标签用法详解
2014/06/30 PHP
PHP 以POST方式提交XML、获取XML,解析XML详解及实例
2016/10/26 PHP
PHP 文件锁与进程锁的使用示例
2017/08/07 PHP
用Laravel轻松处理千万级数据的方法实现
2020/12/25 PHP
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
测试你的JS的掌握程度的代码
2009/12/09 Javascript
js转义字符介绍
2013/11/05 Javascript
深入理解Javascript中的循环优化
2013/11/09 Javascript
js style动态设置table高度
2014/10/21 Javascript
jQuery 中$(this).index与$.each的使用指南
2014/11/20 Javascript
jquery实现红色竖向多级向右展开的导航菜单效果
2015/08/31 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
js识别uc浏览器的代码
2015/11/06 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
2017/01/22 Javascript
JS库之Particles.js中文开发手册及参数详解
2017/09/13 Javascript
vue中锚点的三种方法
2018/07/06 Javascript
Angular5.0 子组件通过service传递值给父组件的方法
2018/07/13 Javascript
Vue-cli打包后部署到子目录下的路径问题说明
2020/09/02 Javascript
python如何派生内置不可变类型并修改实例化行为
2018/03/21 Python
python计算日期之间的放假日期
2018/06/05 Python
python3爬取数据至mysql的方法
2018/06/26 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
2018/12/28 Python
Python基于数列实现购物车程序过程详解
2020/06/09 Python
keras读取h5文件load_weights、load代码操作
2020/06/12 Python
python实现PDF中表格转化为Excel的方法
2020/06/16 Python
python实现数字炸弹游戏
2020/07/17 Python
通过CSS3的object-fit来调整图片适配尺寸的技巧简介
2016/02/27 HTML / CSS
ALDO英国官网:加拿大女鞋品牌
2018/02/19 全球购物
护理职业应聘自荐书
2013/09/29 职场文书
医学生职业生涯规划书范文
2014/03/13 职场文书
水污染治理工程专业自荐信
2014/06/21 职场文书
创业计划书之面包店
2019/09/17 职场文书
Python包argparse模块常用方法
2021/06/04 Python