我正在创建一个jQuery插件。它需要用户输入,并应突出显示现有页面内容中的文本。现在,插件突出显示了包含用户输入内容的整个行。jQuery插件 - 突出显示文字
理想情况下,它只匹配输入的短语。
我有三个文件:
HTML文件:
<input type="text" id="name">
<p>harry gambhir is sitting in oakville tim hortons drinking coffe </p>
插件文件:
$(document).ready(function(){
(function ($) {
$.fn.high = function(){
$("#name").keyup(function(){
var user = $(this).val();
var hhh = $("p:contains('"+ user + "')").addClass('highlight');
});
};
}(jQuery));
$('p').high();
});
CSS文件:
.highlight{
background-color:#000000;
}
也许我需要创建一个跨度然后标记字母表添加类以突出显示它。我不知道如何将span标签分配给输入的文本。这只是一个想法,如果有更好的解决方案,请让我知道。
这的确是一个常见的事,有已经有几个组件了,例如[mark.js](https://markjs.io/)。 – dude