如果某个元素是父元素中唯一的子元素,那将会被匹配 如果父元素中含有其他元素,那将不会被匹配
实例:
<!DOCTYPE html>
<html lang='zh-cn'>
<head>
<title>Insert you title</title>
<meta http-equiv='description' content='this is my page'>
<meta http-equiv='keywords' content='keyword1,keyword2,keyword3'>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
<script type='text/javascript' src='./js/jquery-1.12.1.min.js'></script>
<style type='text/css' >
*{margin:0;padding:0;}
html{font:400 15px/1.2em 'Courier New';color:#666;}
div > *{margin:10px 0;cursor:pointer;}
#demo{750px;margin:75px auto;}
button{padding:5px 15px;border:0;outline:none;margin-top:-5px;border-radius:2px;font:400 12px/1.2em 'Courier New';}
.active{background-color:yellow;transition: .3s;}
.hover{background-color:red;transition: .3s}
p{text-indent:8px;}
</style>
<script type='text/javascript'>
/**
概述
如果某个元素是父元素中唯一的子元素,那将会被匹配,如果父元素中含有其他元素,那将不会被匹配。
*/
$(function(){
// $('p:only-child').addClass('hover');
// 同时也可以使用jquery方法进行范围的限定来实现精确选取
$('p:only-child','div:nth-child(4)').addClass('active');
});
</script>
</head>
<body>
<div id='demo'>
<p class='test'>The first paragraph in div.</p>
<div style='border:1px solid #3695BC'>
<p>The first paragraph in div.</p>
</div>
<div style='border:1px solid #3695BC'>
<p>The first paragraph in another div.2</p>
<p>The last paragraph in another div.2</p>
</div>
<div>
<p>The first paragraph in div.</p>
</div>
<div style='border:1px solid #3695BC'>
<p>The first paragraph in div.</p>
<span style='white-space: pre-wrap;'> The first span in div.</span>
</div>
</div>
</body>
</html>