jQuery中position()与offset()区别

转载自  jQuery中position()与offset()区别

position()获取相对于它最近的具有相对位置(position:relative或position:absolute)的父级元素的距离,如果找不到这样的元素,则返回相对于浏览器的距离。

offset()始终返回相对于浏览器文档document的距离,它会忽略外层元素。

下边看个简单的例子,这里外层的div元素(position:relative)仅一个:


<div id="outer" style="width:200px;position:relative;left:100px;">
    

<div id="inner" style="position:absolute;left:50px;top:60px;">           
    </div>

 </div>


//获取相对于最近的父级(position:relative或position:absolute)的位置


var vposition = $("#inner").position();


alert(vposition.left);   //输出:50


alert(vposition.top);    //输出:60

 var voffset = $("#inner").offset();


alert(voffset.left);   //输出:$("#outer").offset().left+50

 alert(voffset.top);    //输出:$("#outer").offset().top+60

在不同浏览器中,offset()得到的相对于浏览器的位置不同,相信你看了上边相应的注释,已经掌握了position()同offset()方法的区别。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jQuery是一个功能强大的JavaScript库,它简化了JavaScript的编码工作。而仿WPS菜单是指通过使用jQuery来实现类似WPS软件的菜单效果。 首先,我们需要在HTML文件引入jQuery库的相关文件。可以通过下载jQuery的压缩版本文件并将其放置在项目的文件夹,然后使用`<script>`标签将其引入到HTML文件。 然后,我们需要编写jQuery代码来实现仿WPS菜单效果。首先,我们可以使用jQuery的选择器来选需要添加菜单效果的HTML元素。例如,可以选顶部导航栏的菜单按钮以及菜单弹出框。 接下来,我们可以使用jQuery的事件绑定方法,如`click()`来监听菜单按钮的点击事件。当菜单按钮被点击时,我们可以使用jQuery的动画效果,如`slideDown()`或`fadeIn()`来展示菜单弹出框。 同时,我们还可以使用jQuery的其他方法和属性来对菜单弹出框进行样式和位置的调整。例如,可以使用`css()`来设置菜单弹出框的宽度、高度、背景颜色等样式,使用`position()`和`offset()`方法来设置菜单弹出框的位置。 在菜单弹出框展示之后,我们可以通过监听菜单项的点击事件来实现相应的功能。例如,可以使用`click()`事件来监听菜单项的点击,并执行相应的操作,如显示下拉菜单、跳转到其他页面等。 最后,我们可以使用jQuery的事件绑定方法来监听其他事件,如鼠标移出菜单按钮区域时隐藏菜单弹出框的事件。例如,可以监听菜单弹出框以外的区域的点击事件,并使用`slideUp()`或`fadeOut()`方法来隐藏菜单弹出框。 综上所述,通过使用jQuery库的相关方法和属性,我们可以方便地实现仿WPS菜单的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值