>  기사  >  웹 프론트엔드  >  将搜索关键字设置为高亮显示实例代码_html/css_WEB-ITnose

将搜索关键字设置为高亮显示实例代码_html/css_WEB-ITnose

WBOY
WBOY원래의
2016-06-24 11:29:091570검색

将搜索关键字设置为高亮显示实例代码:
搜索关键词以高亮状态呈现是一种比较人性化的举措,例如百度或者本站都有这样的功能,可以极大的提高辨识度,下面就通过代码实例介绍一下如何实现此功能。
代码实例如下:

 

<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="author" content="http://www.softwhy.com/" /><title>蚂蚁部落</title> <style type="text/css"> strong{color:red} </style> <script type="text/javascript">function createExp(arry){  var str="";  for(var i=0;i<arry.length;i++)  {    if(i!=arry.length-1)    {      str=str+arry[i]+"|";    }    else    {      str=str+arry[i];    }  }  return "("+str+")";}function hightKey(key,id){  var arr=null;  var regStr=null;  var content=null;  var Reg=null;  var newContent=null;  var theObj=document.getElementById(id);  arr=key.split(/\s+/);  regStr=createExp(arr);  content=theObj.innerHTML;  Reg=new RegExp(regStr,"g");  return newContent=content.replace(Reg,"<strong>$1</strong>");}window.onload=function(){  var thediv=document.getElementById("thediv");  var key="蚂蚁部落  青岛";  thediv.innerHTML=hightKey(key,"thediv");}</script></head> <body> <div id="thediv">蚂蚁部落欢迎您,只有努力非都才会有美好的未来,蚂蚁部落位于青岛市南区</div></body> </html>

 

以上代码实现了我们的要求,可以将指定的关键字在字符串中以高亮的形式展现,下面简单介绍一下实现过程。
一.实现原理:
原理很简单,以上代码的最终目的就是实现用正则表达式匹配每一个关键字,然后用指定的字符串替换匹配的关键字,然后利用CSS给其高亮或者加粗即可,原理大致如此,可以参阅相关阅读,或者跟帖留言。
二.相关阅读:
1.split()函数可以参阅javascript的String对象的split()方法一章节。 
2.RegExp()构造函数可以参阅正则表达式的创建一章节。 
3.replace()函数可以参阅正则表达式replace()函数一章节。 

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=10500

更多内容可以参阅:http://www.softwhy.com/javascript/

 

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.