我想从div.class1
,但没有选择所有内容[...] div.class4
您可以使用此属性选择:
div[class]
表示具有class
属性的任何div
。
div[class="class4"]
表示任何div
,其class
属性的值为class4
。
div[class!="class4"]
表示任何div
,其具有class
属性,其值为而非class4
。
所以,你的选择必须是:
div div[class!="class4"]
即。任何div
在另一个div
其中的类名不是class4
。
工作实施例:
$(document).ready (
function() {
$('div div[class!="class4"]').css('borderWidth','3px');
}
);
div {
margin: 12px;
width: 50%;
border: 1px solid rgb(0,0,0);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="class1">
<div class="class2">
<div class="class3">
some text
</div>
<div class="class4">
some text
</div>
</div>
</div>
为了完整性起见,这里是jQuery的对比的JavaScript当量...
的jQuery:
function() {
$('div div[class!="class4"]').css('borderWidth','3px');
}
的Javascript:
var selectedDivs = document.querySelectorAll('div div:not(.class4)');
for (var i = 0; i < selectedDivs.length; i++) {
selectedDivs[i].style.borderWidth = '3px';
}
的'.class4'格是'.class1'所以无法避免的一个孩子。这听起来像是一个XY问题。你的问题到底是什么? –
你想要什么样的预期结果? plz简要地回答你的问题 –
我想从div.class1中选择所有内容,但没有div.class4的内容 – Oloji