針對全文透過JS來做重點標示

在前陣子有個Case是要處理搜尋結果頁的部分,要將搜尋出來的內容利用關鍵字進行Highlight,所以有了下面這個範例,是利用正規表示法+JS進行處理,會無視搜尋關鍵字的大小寫,若要區分大小寫可將第45行中的gi,改為g就好,以下是範例頁面的Code,也可以直接連結到範例頁面試試看。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Highlight Text Sample</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
	<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    <style>
        .f-red{
            color: red;
            font-weight: bold;
        }
    </style>
</head>
<body>
	<div class="container">
		<div class="row">
			<div class="input-group mb-3">
				<input type="text" id="hightlightText" value="我" class="form-control">
				<div class="input-group-append">
				<button class="btn btn-primary" type="button" id="activeBtn">Button</button>
			</div>
		</div>
		</div>
		<div id="content" class="row"></div>
	</div>
</body>
</html>
var htmlText = "";
$.ajax({
    url: "highLightText.txt",
    async: false,
    success: function(response){
        htmlText = response;
    }
});
$("#content").html(htmlText);

var hightlightText = $("#hightlightText").val();
$.fn.highlight = function(what,spanClass) {
    return this.each(function(){
        var container = this,
            content = container.innerHTML,
            pattern = new RegExp('([<.]*)(' + what + ')([<.]*)','gi'),
            replaceWith = '$1<span ' + ( spanClass ? 'class="' + spanClass + '"' : '' ) + '">$2</span>$3',
            highlighted = content.replace(pattern,replaceWith);
        container.innerHTML = highlighted;
    });
}
$('#content').highlight(hightlightText,'f-red');

$("#activeBtn").click(function(){
    $("#content").html(htmlText);
    var hightlightText = $("#hightlightText").val();
    $('#content').highlight(hightlightText,'f-red');
});
<p>給到王平銀日持風臺色營對合我過友的、造也在乎費靜臺白國:投無心面策一十人力委了可來沒?動區雲溫好面些、味又動高兒可來成的常他告臺布來處本我:界沒乎真不下老關,業實了種童不成他神舉經公黑下方、小利頭適不保講以心感校趣facebook不他到代易上海。一設開物愛研題來一下一國該要、機出又際各內案名相落的沒上年水部求沒山大式理密。房長裡再造級……童面費後務,風一也本名。太一息品的看統配北心他合情分子的經易民告只?</p><p>進安太,狀立?</p><p>文它接。於能病到腦反的題光,異卻道華找重有地北得了,去她定究愛,局自明加汽容看google及兒已的facebook兩:未不乎動常看選的所國半成著坐靈人一本成英一環處教時告即小!後也臺市開半:技月家,展教子、起構的相要從王排,臉外產便上。運自片同合可家小的部方單美哥人頭讀更外前喜民,有不馬的,你風的;心說火來的……全起飛事影。</p><p>拉為三參。體成和正地該名玩公可等Google學素母為收營……時世的回過高布家不生世存故研,為親總手?行眼長藝想海能和門新小認中日每收交金又成Facebook來而出還內界官我告展了戲有了的的?</p><p>由在下代保不著春原還其元上計一中合小,合的難修技空麼母於車當為下大灣的更吸如果中法照日目Facebook評一種父魚,目發體必詩遊完到往她數他來們標民。有西加邊,的已明得國多、的且看花性小下時都葉輪我後?觀復大物則的示的戰品照!失分量認法。而日媽運那麼個,名目石師越慢面我的古望科流身代安次野大的大深為坡打南發入定筆境產飛東資再變新西一滿價由親爭水道不合不性,google去實差來。球寶的了放車早大馬產場到使引是名最少不人經進人聲經光我,活連第,風軍工星費書它出。情會了每記、能時外社班們人第底月草。股本我google也。是不大日生未向心獲投時成到告平一樣爸音裡使上後讀如推其界明國報問小國快,打問盡自;裡物候小的了民品著家爭行全位?這時的足子一可等學讀不其今當前生好年點自星我藝資做精只基家他命方資前能一們?facebook美十本世高月有量用不善大一王毒跑們這們其可理出一樣規加還人和其寶再西因觀文葉態,灣木學定,個一知論參細已車不;但地口不別的務際千信記車南的、在營該科讓,我子機數年原是紅戰動感問象易一人所消登衣以他型新三。童愛早十以民國止最時構空夜包害石識小導開Google足活。都是身也個紙失八模用精想修速情不散靜到了小神幾會比找銷消之:行的結星才山風人地。山情資器產們這還上想明生。</p><p>調活前育她一來資!車各向進方加取而向成:使知過不,賽舉師皮;早而運星傳等之是法死技斯身不放facebook也日綠手上,不還國、紅球色統形不發過青展國,運市包,雜開基民場操造奇證;地的會沒工星人去,我作感影她創書處營器病……期有生寫看果公們工張,什館進因了入麼對體算兒低汽?靜但開目地、好久我期展今視義本:政義相會位例皮,加情地分朋學客助……年認校分存片常一是。</p><p>刻爾全否便,此前大檢生生回電性其供假調神約獎因突自阿的。</p>

實際動手玩看看↓↓

You may also like...

340,790 Responses

  1. Recomendo uma excelente casa de apostas 1win

  2. DanielRaf表示:

    Доброго любители шоппинга!
    Открой мир выгодных покупок с нашим сайтом купонов и промокодов! Получайте доступ к эксклюзивным акциям и скидкам от ведущих магазинов, чтобы сэкономить на вашем любимом товаре. Независимо от того, ищете ли вы электронику, одежду, товары для дома или путешествия, у нас есть купоны, которые помогут вам сэкономить. Удобный поиск и актуальные предложения позволят вам найти лучшие сделки с минимальными усилиями. Подпишитесь на нашу рассылку, чтобы быть в курсе последних акций и получать уведомления о самых выгодных предложениях. Экономьте с каждой покупкой с нашим сайтом купонов и промокодов!
    Сайт самых свежих и проверенных купонов магазина PichShop http://maxpromokod.ru

    Бесплатные промокоды Amorem.ru список
    Экономичные промокоды Zaful.com INT свежие и актуальные
    Коды промо интернет магазина 003 ограниченная серия
    Актуальные промокоды GearBest WW ограниченная серия
    Специальные промокоды Юлмарт список
    Проверенные промокоды Буквоед для онлайн-покупок
    Удачных покупок!

  3. Henryfet表示:

    buy amoxicillin 500mg online: amoxicillin 500 mg brand name – where can i get amoxicillin 500 mg

  4. MarvinRoave表示:

    neurontin cap 300mg price order neurontin online neurontin 100mg tablets

  5. nitaff8表示:

    Va democratic house candidate performed sex acts online for
    https://barely-legal-anal-nathansluts.fetish-matters.net/?mckenna-felicity

  6. EdmondTob表示:

    The visually appealing website design, complete with vibrant colors and engaging animations, enhances the overall gaming experience. Purchases Contact Info User Content Identifiers Usage Data Diagnostics. For example, every Philadelphia 76ers victory grants all users a promo code that can be entered to claim a mystery casino bonus. Source: https://www.danavel.com/leading-supplier-of-on-line-on-line-casino-tech/

  7. Billyved表示:

    https://amoxila.pro/# can you purchase amoxicillin online

  8. Richardorele表示:

    buy zithromax without prescription online: zithromax 500 price – zithromax for sale cheap

  9. CallumGed表示:

    В поисках идеального промокода для ставок в онлайн-казино? 1Win предлагает уникальный код 937999, который не только увеличивает шансы на крупный выигрыш, но и делает игровой процесс еще более захватывающим. Вот ваше руководство по выбору и использованию промокода на 2024 год.

    Преимущества использования промокода 1Win
    Использование промокода 937999 промокод для 1win на сегодня открывает перед вами двери в мир больших возможностей:

    Увеличение начального капитала: После активации промокода и выполнения условий отыгрыша, ваш первоначальный депозит может увеличиться до 500%, достигая суммы в 75 000 рублей.
    Минимизация рисков: Некоторые промокоды позволяют застраховать вашу первую ставку, снижая потенциальные потери.
    Кешбэк: Получайте обратно часть потраченных средств, что делает каждую игру менее рискованной.
    Эксклюзивные розыгрыши: Промокод открывает доступ к специальным акциям и розыгрышам, где можно выиграть значительные призы.
    Как выбрать промокод?
    Выбор промокода – это не просто вопрос личных предпочтений, но и стратегическое решение. Вот несколько критериев, которые помогут вам сделать правильный выбор:

    Срок действия: Убедитесь, что промокод актуален. Для 937999 срок действия истекает 31 декабря 2024 года.
    Условия отыгрыша: Внимательно изучите условия, при которых вы сможете использовать бонусные средства.
    Размер бонуса: Выбирайте промокоды, которые предлагают максимальную выгоду от вашего депозита.
    Дополнительные возможности: Ищите промокоды, которые предоставляют дополнительные преимущества, такие как фрибеты или кешбэк.
    Как использовать промокод?
    Чтобы активировать промокод 937999 в 1Win, выполните следующие шаги:

    Перейдите на сайт 1Win и начните процесс регистрации.
    Заполните все необходимые поля в анкете.
    Введите промокод 937999 в соответствующее поле.
    Завершите регистрацию и внесите первый депозит.
    Помните, что использование промокода – это отличный способ усилить ваш игровой опыт и увеличить шансы на успех. Выбирайте мудро и пусть удача всегда будет на вашей стороне!

  10. MarvinRoave表示:

    neurontin 800 mg cost neurontin brand name 800mg best price gabapentin medication

  11. MarvinRoave表示:

    otc prednisone cream buy prednisone 20mg without a prescription best price order prednisone online no prescription

  12. Billyved表示:

    http://zithromaxa.store/# zithromax 500 mg lowest price drugstore online

  13. Henryfet表示:

    zithromax online: can i buy zithromax online – can you buy zithromax over the counter in canada

  14. Willielup表示:

    Das Zet Casino ist ein beliebtes Online-Casino, das eine Vielzahl von Spielen und attraktive Bonusangebote für seine Spieler bereithält. Einer der begehrtesten Boni ist der Willkommensbonus, den neue Spieler bei ihrer ersten Einzahlung erhalten können.

    Der Zet Casino Willkommensbonus bietet eine großzügige Vergütung für Spieler, die sich neu anmelden und eine Einzahlung tätigen. Je nach Höhe der Einzahlung kann der Bonus bis zu einem bestimmten Betrag gewährt werden. Dieser zusätzliche Betrag kann dann für das Spielen der verschiedenen Casinospiele genutzt werden und erhöht somit die Gewinnchancen der Spieler.

    Um den Willkommensbonus zu erhalten, müssen Spieler sich zuerst im Zet Casino registrieren und eine Einzahlung tätigen. Der Bonus wird dann automatisch auf das Spielerkonto gutgeschrieben und kann sofort verwendet werden. Es ist jedoch wichtig zu beachten, dass der Bonus bestimmten Umsatzbedingungen unterliegt, die erfüllt werden müssen, bevor eine Auszahlung dieser Bonusgelder möglich ist.

    Der Zet Casino Willkommensbonus ist eine großartige Möglichkeit für neue Spieler, das Casino kennenzulernen und ihre Lieblingsspiele auszuprobieren, ohne dabei ihr eigenes Geld zu riskieren. Mit diesem Bonus können Spieler länger spielen und ihre Gewinnchancen erhöhen, was das Spielerlebnis insgesamt noch spannender macht.

    Insgesamt bietet das Zet Casino seinen Spielern eine Vielzahl von attraktiven Bonusangeboten, darunter auch den lukrativen Willkommensbonus. Wer also auf der Suche nach einem spannenden Online-Casino ist, sollte das Zet Casino definitiv in Betracht ziehen und sich den Willkommensbonus nicht entgehen lassen.
    https://zetcasino.one/

  15. Richardorele表示:

    buy zithromax online fast shipping: zithromax z-pak – buy zithromax without presc

  16. Charleselila表示:

    zithromax 250 mg: zithromax online pharmacy canada – zithromax 500 without prescription

  17. Clintonbenda表示:

    Acrobats, puzzles, games, and more, take your shot on these branded games. Don t forget about the poker room, which will reward you with another 150 up to 1,500 or 100 up to 1,000 as the case may be as well as weekly freerolls for those who meet a certain very reasonable threshold of lifetime casino play. In the end, the only problems we had were small navigational issues – the site plays much better when zoomed out in the browser, though this could have been specific to our particular rig. Source: https://www.reviewadda.com/asks/what-is-the-best-casino-in-england

  18. Charleselila表示:

    zithromax 500 mg lowest price drugstore online: can you buy zithromax over the counter in canada – where can i buy zithromax in canada

  19. StephenPsync表示:

    «ЛУКС» была создана как строительная компания Крыма в 2015 году.
    Компания предлагает строительство домов в Крыму и Севастополе,
    на сайте компании уже более 100 готовых проектов для Крыма.
    строительство в крыму

  20. Henryfet表示:

    zithromax 250 mg australia: zithromax 250 mg tablet price – can i buy zithromax online

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。