我试图让这个jQuery脚本只将css应用于包含文本的类,而不是其他的。
如果类包含某个文本,我想将宽度限制为100像素,将高度限制为100像素。
if ($('#targetID > div.targetClass:contains("Important Text")') {
$('targetClass').css("width" , "100px").css("height" , "100px");
}
HTML Here:
<div id="targetID">
<div>
<div class="targetClass">
<a href="#">Not important</a>
</div>
</div>
<div>
<div class="targetClass">
<a href="#">Not important</a>
</div>
</div>
<div>
<div class="targetClass">
<a href="#">Important Text and Other Stuff</a>
</div>
</div>
<div>
<div class="targetClass">
<a href="#">Not important</a>
</div>
</div>
</div>
谢谢
答案 0 :(得分:1)
:contains
是一个选择器,当您尝试使用它时,它不会返回true / false。你可以做你想做的事:
$('#targetID div.targetClass:contains("Important Text")').css({
"width": "100px",
"height": "100px"
})
$('#targetID div.targetClass:contains("Important Text")').css({
"width": "100px",
"height": "100px"
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="targetID">
<div>
<div class="targetClass">
<a href="#">Not important</a>
</div>
</div>
<div>
<div class="targetClass">
<a href="#">Not important</a>
</div>
</div>
<div>
<div class="targetClass">
<a href="#">Important Text and Other Stuff</a>
</div>
</div>
<div>
<div class="targetClass">
<a href="#">Not important</a>
</div>
</div>
</div>
答案 1 :(得分:0)
纯JS方法似乎最稳定:
var el = document.getElementById("yourTagId")
if (el.innerHTML.indexOf("Very cool text copy") !== -1) {
// do something
}
答案 2 :(得分:0)
你可以在一个代码行中完成,
$("#targetID .targetClass:contains('Important Text')").css("width" , "100px").css("height" , "100px");