本文实例讲述了jQuery中has选择器用法。分享给大家供大家参考。具体分析如下:
此选择器匹配含有选择器所匹配的元素的元素。
语法结构:
复制代码 代码如下:$(":has(selector)")
关于此选择器的定义可能有点拗口,通俗的讲就是如果一个元素含有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="https://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="/UploadFiles/2021-04-02/jquery-1.8.3.js">
<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="https://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="/UploadFiles/2021-04-02/jquery-1.8.3.js">
<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程序设计有所帮助。
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。