-1

我想在 chrome 中突出显示一些文本,但有条件地。该网站对页面上的每个元素都使用这种类型的代码,我想突出显示长度低于 1:00:00 的那些

<div class="entry_content">
<p>
"Title"
<br> 
<a href="a link" target="_blank">
<img src="alink.jpg" alt="name">
</a>
<br> Size: 11111111 bytes (111.11 MB), duration: 00:11:11, avg.birate: 111 kb/s
<br> Audio: aac, 16000 Hz, mono
<br> Video: h264, 320×240, 15 fps
</p>
</div>

PS:我知道数字不相加,这是一个例子;)

如果可能的话,我想用时尚的 css 做到这一点,但真的不知道这是否可能以及如何在 css 中制作条件。

谢谢您的帮助。

4

1 回答 1

1

我看不到任何使用 css 根据内容有条件地突出显示元素的方法。然而,一个简单的 javascript 就可以做到:

var divs = document.getElementsByClassName("entry_content");

for (var i = 0; i < divs.length; i++)
{
    if (/duration:\s00:/.test(divs[i].innerHTML))
    {
        divs[i].style.backgroundColor = "yellow";
    }
}
<div class="entry_content">
<p>
"One Hour Eleven Minutes"
<br> 
<a href="a link" target="_blank">
<img src="alink.jpg" alt="name">
</a>
<br> Size: 11111111 bytes (111.11 MB), duration: 01:11:11, avg.birate: 111 kb/s
<br> Audio: aac, 16000 Hz, mono
<br> Video: h264, 320×240, 15 fps
</p>
</div>
<div class="entry_content">
<p>
"Eleven Minutes"
<br> 
<a href="a link" target="_blank">
<img src="alink.jpg" alt="name">
</a>
<br> Size: 11111111 bytes (111.11 MB), duration: 00:11:11, avg.birate: 111 kb/s
<br> Audio: aac, 16000 Hz, mono
<br> Video: h264, 320×240, 15 fps
</p>
</div>
<div class="entry_content">
<p>
"Eleven Hours"
<br> 
<a href="a link" target="_blank">
<img src="alink.jpg" alt="name">
</a>
<br> Size: 11111111 bytes (111.11 MB), duration: 11:11:11, avg.birate: 111 kb/s
<br> Audio: aac, 16000 Hz, mono
<br> Video: h264, 320×240, 15 fps
</p>
</div>

于 2015-06-19T01:57:58.263 回答