$.extend($.expr[':'], {
'containsi': function(elem, i, match, array)
{
return (elem.textContent || elem.innerText || '').toLowerCase()
.indexOf((match[3] || "").toLowerCase()) >= 0;
}
});
window.setInterval(function() {
$("div[class^='chat-box-content'] div[class^='message'] span:containsi(Dexter)").css("background","greenyellow");
},1000);
这是我当前突出显示包含Dexter一词的消息的方法。然而,有时在聊天中人们会说Dexterity,它也会突出显示。我正在寻找一种只能突出“Dexter”这个词的外观的方法
该消息可能包含其他内容。例如,这是一条消息: 德克斯特:实际上,德克斯特
它包含实际一词,使用文本功能无法匹配。
答案 0 :(得分:1)
如果您想要严格匹配文字
span:containsi(Dexter)
应该是
span:text(Dexter)
<强>更新强>
在这种情况下,您应该使用过滤器..
var matchedElem= $("div[class^='chat-box-content'] div[class^='message'] span:containsi(Dexter)").filter(function() {
return $(this).text() === 'Dexter';
});
matchedElem.css("background","greenyellow");