我想浏览所有p
,然后检查p
是否不包含任何b
。但是当我的下面的脚本无法正常工作时。
当我将条件设置如下时,所有p
都不会突出显示。
!$.contains($(this), 'b')
我尝试如下,但它会突出显示所有p
。
!$.contains($(this), 'b')
这个$(this)
在循环期间是否全部p
而不是特定的p
?
$(document).ready(function() {
$('p').each(function() {
if (!$.contains($(this), 'b')) {
$(this).css('background-color', 'yellow');
}
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<h1>Welcome to My Homepage</h1>
<p class="intro">My name is Donald.</p>
<p><b>I live in Duckburg.</b>
</p>
<p>My best friend is Mickey.</p>
Who is your favourite:
<ul id="choose">
<li>Goofy</li>
<li>Mickey</li>
<li>Pluto</li>
</ul>
答案 0 :(得分:1)
将:has()
selector与:not()
选择器
选择包含至少一个与指定选择器匹配的元素的元素。
$('p:not(:has(b))').css('background-color', 'yellow');
OR
$('p').not(':has(b)').css('background-color', 'yellow');
$(document).ready(function() {
$('p:not(:has(b))').css('background-color', 'yellow');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<h1>Welcome to My Homepage</h1>
<p class="intro">My name is Donald.</p>
<p><b>I live in Duckburg.</b>
</p>
<p>My best friend is Mickey.</p>
Who is your favourite:
<ul id="choose">
<li>Goofy</li>
<li>Mickey</li>
<li>Pluto</li>
</ul>
&#13;
答案 1 :(得分:1)
您可以使用 :has()
选择包含b
的元素,然后使用 :not()
或 {{3} } 以避免它们
$(document).ready(function() {
$('p').not(':has(b)').css('background-color', 'yellow');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<h1>Welcome to My Homepage</h1>
<p class="intro">My name is Donald.</p>
<p><b>I live in Duckburg.</b>
</p>
<p>My best friend is Mickey.</p>
Who is your favourite:
<ul id="choose">
<li>Goofy</li>
<li>Mickey</li>
<li>Pluto</li>
</ul>
或者您可以使用 not()
$(document).ready(function() {
$('p').filter(function() {
return $('b', this).length == 0;
}).css('background-color', 'yellow');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<h1>Welcome to My Homepage</h1>
<p class="intro">My name is Donald.</p>
<p><b>I live in Duckburg.</b>
</p>
<p>My best friend is Mickey.</p>
Who is your favourite:
<ul id="choose">
<li>Goofy</li>
<li>Mickey</li>
<li>Pluto</li>
</ul>
答案 2 :(得分:0)
这应该有用。
$('p').each(function(){
if($(this).find('b').length > 0) {
alert($(this).find('b').text());
}
});
答案 3 :(得分:0)
你可以试试这个:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<SwitchPreference
android:id="@+id/notification"
android:key="notification"
android:title="@string/notification"
android:defaultValue="true"/>
</PreferenceScreen>