我必须突出显示用户传入的字词。我使用下面的代码来识别给定句子中单词的存在,然后如果存在,我显示整个句子。
<html>
实施例
<style type="text/css">
.highlight{
color: maroon;
font-size: 1.1em;
}
</style>
<script type="text/javascript" src="../scripts/jquery-1.4.js"></script>
<script type="text/javascript">
function getSentence(word) {
var sentence="here is the text";
alert(word);
if (sentence.toLowerCase().indexOf(word.toLowerCase())!=-1) {
sentence.replace(new RegExp('\b(word)\b', 'g'), '<span class="highlight">$1</span>');
$("#placeholder").append("<h3>"+sentence+"</h3><br/>");
}
}
</script>
<form>
<div>
<a onclick=getSentence('text');>text</a>
</div>
<div id="placeholder"></div>
</form>
请让我知道如何在句子中突出显示给定的单词。
答案 0 :(得分:2)
sentence.replace(new RegExp('\b(word)\b', 'g'), '<span class="highlight">$1</span>');
这假设您的文字中没有HTML。如果是这样,我们需要递归查找文本节点并应用正则表达式。
答案 1 :(得分:1)
可以根据您的要求尝试这个