2017-05-25 213 views
-7

给定一个带有文本“Hello World”的DOM元素。突出显示字符“l”的最有效方法是什么?突出显示文本 - 本机Javascript

+0

放了''他们周围,设置其CSS使用任何突出显示你想要的。 – Barmar

+0

刺探它,如果遇到困难,请提出一个关于您正在使用的*特定*问题的问题,显示您的代码并说明它出了什么问题。 –

回答

1

围绕它们包装一个<span>,并使用CSS来突出显示其类的跨度。

domElement.innerHTML = domElemnt.innerHTML.replace(/l+/g, '<span class="highlight">$&</span>'); 
+0

正是我在找的东西,非常感谢! –

1

您可以使用正则表达式和mark元素来突出显示所有 'L' 出现在字的 “Hello world”

var element = document.getElementById('hello'); 
 
element.innerHTML = element.innerHTML.replace(/(l)/g, '<mark>$1</mark>');
<div id="hello"> 
 
    Hello World 
 
</div>

+0

它确实解决了问题,但效率不高,因为即使它们连续出现并且可以在组中标记,每个“l”也会单独标记。 。我们可以使用另一个正则表达式来替换字符串“”以实现它,但它需要另一次迭代。 –