首页 > 语言 > JavaScript > 正文

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

2024-05-06 16:23:19
字体:
来源:转载
供稿:网友

这篇文章主要介绍了浅谈jQuery的offset()方法及示例分享的相关资料,需要的朋友可以参考下

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

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

语法结构一

:

$(selector).offset()

获取匹配元素在当前document的相对偏移。

返回的对象包含两个整型属:top和left。

此方法只对可见元素有效。

实例代码:

 

 
  1. <!DOCTYPE html> 
  2. <html> 
  3. <head> 
  4. <meta charset=" utf-8"
  5.  
  6. <style type="text/css"
  7. *{ 
  8. margin:0px; 
  9. padding:0px; 
  10. .father{ 
  11. border:1px solid black; 
  12. width:400px; 
  13. height:300px; 
  14. padding:10px; 
  15. margin:50px; 
  16. .children{ 
  17. height:150px; 
  18. width:200px; 
  19. margin-left:50px; 
  20. background-color:green; 
  21. </style> 
  22. <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> 
  23. <script type="text/javascript"
  24. $(document).ready(function(){ 
  25. $("button").click(function(){ 
  26. a=$(".children").offset(); 
  27. alert("元素的偏移量坐标是:"+a.top+"|"+a.left+""); 
  28. }) 
  29. }) 
  30. </script> 
  31. </head> 
  32. <body> 
  33. <div class="father"
  34. <div class="children"></div> 
  35. </div> 
  36. <button>获取元素的坐标</button> 
  37. </body> 
  38. </html> 

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

语法结构二

:

$(selector).offset(value)

设置匹配元素相对于document对象的坐标。

offset()方法可以让我们重新设置元素的位置。这个元素的位置是相对于document对象的。

如果对象原先的position样式属性是static的话,会被改成relative来实现重定位。

参数列表:

参数描述

value规定以像素计的 top 和 left 坐标。

可能的值:

1.值对,比如 {top:200,left:10}。

2.带有top和left 属性的对象。

实例代码:

 

 
  1. <!DOCTYPE html> 
  2. <html> 
  3. <head> 
  4. <meta charset=" utf-8"
  5.  
  6. <style type="text/css"
  7. .father{ 
  8. border:1px solid black; 
  9. width:400px; 
  10. height:300px; 
  11. .children{ 
  12. height:150px; 
  13. width:200px; 
  14. background-color:green; 
  15. </style> 
  16. <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> 
  17. <script type="text/javascript"
  18. $(document).ready(function(){ 
  19. $("button").click(function(){ 
  20. $(".children").offset({top:100,left:100}) 
  21. }) 
  22. }) 
  23. </script> 
  24. </head> 
  25. <body> 
  26. <div class="father"
  27. <div class="children"></div> 
  28. </div> 
  29. <button>点击设置偏移量</button> 
  30. </body> 
  31. </html> 

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

语法结构三

:

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

$(selector).offset(function(index,oldoffset))

参数列表:

参数描述

function(index,oldvalue)规定返回被选元素新偏移坐标的函数:

index - 可选。元素的索引。

oldvalue - 可选。当前坐标。

实例代码:

 

 
  1. <!DOCTYPE html> 
  2. <html> 
  3. <head> 
  4. <meta charset=" utf-8"
  5. <style type="text/css"
  6. .father{ 
  7. border:1px solid black; 
  8. width:400px; 
  9. height:300px; 
  10. .children{ 
  11. height:150px; 
  12. width:200px; 
  13. background-color:green; 
  14. </style> 
  15. <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> 
  16. <script type="text/javascript"
  17. $(document).ready(function(){ 
  18. $("button").click(function(){ 
  19. $(".children").offset(function(a,b){ 
  20. var newpoint= new Object(); 
  21. newpoint.top=b.top+50; 
  22. newpoint.left=b.left+50; 
  23. return newpoint; 
  24. }) 
  25. }) 
  26. }) 
  27. </script> 
  28. </head> 
  29. <body> 
  30. <div class="father"
  31. <div class="children"></div> 
  32. </div> 
  33. <button>点击设置偏移量</button> 
  34. </body> 
  35. </html> 

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

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选