[英]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.