在 jQuery 中,jQuery.offsetParent() 方法和 jQuery.parent() 方法有什么区别?


jQuery.offsetParent()

offsetParent() 方法返回一个 jQuery 集合,其中包含第一个匹配元素的定位父元素。

这是元素的第一个具有定位(例如相对或绝对)的父元素。此方法仅适用于可见元素。

示例

您可以尝试运行以下代码,学习如何在 jQuery 中使用 jQuery.offsetParent()。

在线演示

<html>

   <head>
      <title>jQuery offsetParent() method</title>
      <script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
       
      <script>
         $(document).ready(function() {
           
            $("div").click(function () {
               var offset = $(this).offsetParent();
               $("#lresult").html("left offset: <span>" +
                  offset.offset().left + "</span>.");
               $("#tresult").html("top offset: <span>" +
                  offset.offset().top + "</span>.");
            });
               
         });
      </script>
       
      <style>
         div {
            width:60px;
            height:60px;
            margin:5px;
            float:left;
         }
      </style>
   </head>
   
   <body>
   
      <p>Click on any square:</p>
      <span id = "lresult"> </span>
      <span id = "tresult"> </span>
       
      <div  style = "background-color:blue;">
         <div  style = "background-color:pink;"></div>
      </div>
 
      <div  style = "background-color:#123456;">
         <div  style = "background-color:#f11;"></div>
      </div>

   </body>
</html>

jQuery.parent()

jQuery.parent() 方法用于返回所选元素的直接父元素。它只有一个参数:

序号
参数
描述
1
filter
设置父级搜索的选择器表达式。此参数是可选的。

示例

您可以尝试运行以下代码,学习如何使用 jQuery.parent() 函数:

在线演示

<!DOCTYPE html>
<html>
<head>
<style>
.myclass * {
    display: block;
    border: 2px solid blue;
    color: red;
    padding: 10px;
    margin: 8px;
}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("span").parent().css({"color": "green", "border": "3px solid yellow"});
});
</script>
</head>

<body class="myclass">body
  <div style="width:500px;">div
    <ol>ol
      <li>li - This is the direct parent element
        <span>span</span>
      </li>
    </ol>  
  </div>
</body>

</html>

更新于: 2020年2月14日

255 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告