jQuery中offset()方法用法实例


Posted in Javascript onJanuary 16, 2015

本文实例讲述了jQuery中offset()方法用法。分享给大家供大家参考。具体分析如下:

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

语法结构一:

$(selector).offset()

获取匹配元素在当前document的相对偏移。
返回的对象包含两个整型属:top和left。
此方法只对可见元素有效。

实例代码:

<!DOCTYPE html>

<html>

<head>

<meta charset=" utf-8">

<meta name="author" content="https://3water.com/" />

<title>offset()函数-三水点靠木</title>

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

<meta name="author" content="https://3water.com/" />

<title>offset()函数-三水点靠木</title>

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

<meta name="author" content="https://3water.com/" />

<title>offset()函数-三水点靠木</title>

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

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

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
Jan 11 Javascript
JavaScript实现x秒后自动跳转到一个页面
Jan 03 Javascript
详解JavaScript数组的操作大全
Oct 19 Javascript
prototype框架中美元符号$用法分析
Jan 22 Javascript
Vue.js每天必学之表单控件绑定
Sep 05 Javascript
javascript 闭包详解及简单实例应用
Dec 31 Javascript
JS实现图片转换成base64的各种应用场景实例分析
Jun 22 Javascript
JS实现自定义弹窗功能
Aug 08 Javascript
浅谈Vue项目骨架屏注入实践
Aug 05 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
Mar 09 Javascript
详解在Vue.js编写更好的v-for循环的6种技巧
Apr 14 Javascript
vue自定义插件封装,实现简易的elementUi的Message和MessageBox的示例
Nov 20 Vue.js
jQuery中clone()方法用法实例
Jan 16 #Javascript
jQuery中empty()方法用法实例
Jan 16 #Javascript
jQuery中replaceAll()方法用法实例
Jan 16 #Javascript
jQuery中wrapInner()方法用法实例
Jan 16 #Javascript
jQuery中wrapAll()方法用法实例
Jan 16 #Javascript
jQuery中unwrap()方法用法实例
Jan 16 #Javascript
jquery搜索框效果实现方法
Jan 16 #Javascript
You might like
文件上传程序的全部源码
2006/10/09 PHP
require(),include(),require_once()和include_once()的异同
2007/01/02 PHP
解析获取优酷视频真实下载地址的PHP源代码
2013/06/26 PHP
php简单日历函数
2015/10/28 PHP
鼠标移动到一张图片时变为另一张图片
2006/12/05 Javascript
如何用js控制css中的float的代码
2007/08/16 Javascript
js 调整select 位置的函数
2008/02/21 Javascript
jQuery 使用手册(四)
2009/09/23 Javascript
jquery入门必备的基本认识及实例(整理)
2013/06/24 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
2013/11/08 Javascript
文本域光标操作的jQuery扩展分享
2014/03/10 Javascript
javascript适合移动端的日期时间拾取器
2015/11/10 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
探寻JavaScript中this指针指向
2016/04/23 Javascript
论Bootstrap3和Foundation5网格系统的异同
2016/05/16 Javascript
VUEJS实战之修复错误并且美化时间(2)
2016/06/13 Javascript
JavaScript字符集编码与解码详谈
2017/02/02 Javascript
js实现年月日表单三级联动
2020/04/17 Javascript
JS实现的简单拖拽功能示例
2017/03/13 Javascript
vue如何从接口请求数据
2017/06/22 Javascript
angular1配合gulp和bower的使用教程
2018/01/19 Javascript
layui table设置某一行的字体颜色方法
2019/09/05 Javascript
jQuery实现弹幕特效
2019/11/29 jQuery
[32:26]EG vs IG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
在Python中用keys()方法返回字典键的教程
2015/05/21 Python
Python实现队列的方法
2015/05/26 Python
详解Python函数可变参数定义及其参数传递方式
2017/08/02 Python
Pycharm导入anaconda环境的教程图解
2020/07/31 Python
css3图片边框border-image的用法
2017/06/30 HTML / CSS
英国发展最快的在线超市之一:Click Marketplace
2021/02/15 全球购物
房地产管理毕业生自荐信
2013/11/04 职场文书
房屋租赁授权委托书范本
2014/09/20 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
介绍信格式样本
2015/05/05 职场文书
网络舆情信息简报
2015/07/21 职场文书
vue生命周期钩子函数以及触发时机
2022/04/26 Vue.js