Rumah  >  Artikel  >  hujung hadapan web  >  使文本高亮的JavaScript代码

使文本高亮的JavaScript代码

php中世界最好的语言
php中世界最好的语言asal
2018-03-16 16:17:072299semak imbas

这次给大家带来使文本高亮的JavaScript代码,用JavaScript使文本高亮的的注意事项有哪些,下面就是实战案例,一起来看一下。

有很多JQuery的第三方库可以实现高亮文本的功能,但我更喜欢用下面这一小段JavaScript代码来实现这个功能,它非常短小,而且可以根据我的需要去进行灵活的修改,而且可以自己定义高亮的样式。下面这两个函数可以帮助你创建自己的文本高亮插件。

function highlight(text, words, tag) { 
  // Default tag if no tag is provided
  tag = tag || 'span'; 
  var i, len = words.length, re;  for (i = 0; i < len; i++) {    // Global regex to highlight all matches
    re = new RegExp(words[i], &#39;g&#39;);    if (re.test(text)) {
      text = text.replace(re, &#39;<&#39;+ tag +&#39; class="highlight">$&</&#39;+ tag +&#39;>&#39;);
    }
  } 
  return text;
}

你同样会需要取消高亮的函数:

function unhighlight(text, tag) {  // Default tag if no tag is provided
  tag = tag || &#39;span&#39;;  var re = new RegExp(&#39;(<&#39;+ tag +&#39;.+?>|<\/&#39;+ tag +&#39;>)&#39;, &#39;g&#39;);  return text.replace(re, &#39;&#39;);
}

使用方法:

$(&#39;p&#39;).html( highlight(
    $(&#39;p&#39;).html(), // the text
    [&#39;foo&#39;, &#39;bar&#39;, &#39;baz&#39;, &#39;hello world&#39;], // list of words or phrases to highlight
    &#39;strong&#39; // custom tag));

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

判断日期是否有效的JavaScript代码段

Node.js的Event Loop详解

JavaScript运行机制之任务队列

怎样阻止django中form页面刷新后自动提交

Atas ialah kandungan terperinci 使文本高亮的JavaScript代码. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn