![](/img/trans.png)
[英]How to match and highlight all terms in any order from an array of strings?
[英]jQuery highlight all terms
我正在尝试突出显示搜索词,但它不会拆分单词。 两个单词作为一个字符串,仅照亮该字符串。
在演示中,您可以看到突出显示了“ Windows XP”,但未突出显示“ Windows”。 我应该怎么做才能使两个单词都突出显示?
$(document).ready(function() {
$('p,a').highlight('Windows XP');
});
谢谢您的回答,但我想你们听不懂。 搜索词取自输入字段,因此它会发生变化。 并非总是Windows XP,它可能是“海滩上的太阳”,我希望所有单词都突出显示,而不仅仅是“太阳”
从插件的文档(可在此处获得 ):
您可以通过以一系列术语作为第一个属性的方式运行突出显示来一次突出显示多个文本。 它比多次运行突出显示功能快得多。
$("body p").highlight(["jQuery", "highlight", "plugin"]);
这意味着您可以简单地使用:
$('p,a').highlight(['Windows XP', 'Windows']);
假设您使用
var s = $('#myInput').val();
做
s.split(' ').forEach(function(token){
$('p,a').highlight(token);
});
要么
$("body p").highlight(s.split(' '));
试试这个,它应该突出显示整个字符串和单词。
var searchterm = "Windows XP";
var tohighlight = searchterm.split(" ");
tohighlight.push(searchterm);
$("p,a").highlight(tohighlight);
希望您正在搜索:
var term = $('#q').val();
$.each(term.split(" "),function(i,v){
$('p,a').highlight(v);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.