首頁 > web前端 > js教程 > jQuery中關於​​:has(selector)選擇器的詳解

jQuery中關於​​:has(selector)選擇器的詳解

黄舟
發布: 2017-06-23 11:26:56
原創
1786 人瀏覽過

概述

符合含有選擇器所符合的元素的元素

參數

selectorSelectorV1.1.4
登入後複製

一個用於篩選的選擇器

#範例

描述:

為所有包含p 元素的div 元素新增一個text 類別

HTML 程式碼:

<div><p>Hello</p></div> <div>Hello again!</div>
登入後複製

jQuery代碼:

$("div:has(p)").addClass("test");
登入後複製

結果:

[ <div class="test"><p>Hello</p></div> ]
登入後複製

關於此選擇器的定義可能有點拗口,通俗的講就是如果一個元素含有selector(選擇器)所匹配的元素,那麼此元素將被匹配。例如:

$("div:has(p)")
登入後複製

以上選擇器將符合含有p元素的div元素。
此選擇器一般也要和其他選擇器配合使用,例如類別選擇器元素選擇器等等。例如:

$("div:has(p)").css("color","blue")
登入後複製

以上程式碼將含有p元素的div元素中的字體顏色設定為藍色。
如果不和其他選擇器配合使用,則預設狀態是和*選擇器配合使用,例如$(":has")等同於$("*:has")。

參數清單: 

參數                    說明    

selector        時使用    

實例代碼:

實例一:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.jb51.net/" />
<title></title>
<style type="text/css">
div 
{
  border:1px solid green;
  height:50px;
}
span{border:1px solid blue;}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript"> 
$(document).ready(function(){ 
  $("button").click(function(){ 
    $("div:has(span)").css("border","1px solid red") 
  }) 
}) 
</script>
</head>
<body>
<div>我不含span</div>
<div> <span>我是span</span></div>
<button>点击查看效果</button>
</body>
</html>
登入後複製

以上程式碼能夠將包含span元素的div的邊框顏色設為紅色。

實例二:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.jb51.net/" />
<title></title>
<style type="text/css">
div 
{
  border:1px solid green;
  height:50px;
}
span{border:1px solid blue;}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript"> 
$(document).ready(function(){ 
  $("button").click(function(){ 
    $("*:has(span)").css("border","1px solid red") 
  }) 
}) 
</script>
</head>
<body>
<div>我不含span</div>
<div><span>我是span</span></div>
<p><span>我是span</span></p>
<button>点击查看效果</button>
</body>
</html>
登入後複製

由於上述程式碼並沒有指定與:has選擇器相符使用的選擇器,所以就預設和*選擇器搭配使用,所以能夠以上程式碼能夠將所有包含所有span元素的元素的邊框顏色設為紅色。



#

以上是jQuery中關於​​:has(selector)選擇器的詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板