首页 > web前端 > js教程 > 正文

javascript实现页面内关键词高亮显示代码_javascript技巧

WBOY
发布: 2016-05-16 16:53:29
原创
1045 人浏览过
复制代码 代码如下:





关键字高亮显示



百度(Nasdaq简称:BIDU)是全球最大的中文搜索引擎,2000年1月由李彦宏、徐勇两人创立于北京中关村,致力于向人们提供“简单,可依赖”的


信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。



<script> <BR>function highlight(idVal, keyword) { <BR>var textbox = document.getElementById(idVal); <BR>if ("" == keyword) return; <BR>//获取所有文字内容 <BR>var temp = textbox.innerHTML; <BR>console.log(temp); <BR>var htmlReg = new RegExp("\<.*?\>", "i"); <BR>var arr = new Array(); <br><br>//替换HTML标签 <BR>for (var i = 0; true; i++) { <BR>//匹配html标签 <BR>var tag = htmlReg.exec(temp); <BR>if (tag) { <BR>arr[i] = tag; <BR>} else { <BR>break; <BR>} <BR>temp = temp.replace(tag, "{[(" + i + ")]}"); <BR>} <br><br><BR>// 讲关键词拆分并入数组 <BR>words = decodeURIComponent(keyword.replace(/\,/g, ' ')).split(/\s+/); <br><br>//替换关键字 <BR>for (w = 0; w < words.length; w++) { <BR>// 匹配关键词,保留关键词中可以出现的特殊字符 <BR>var r = new RegExp("(" + words[w].replace(/[(){}.+*?^$|\\\[\]]/g, "\\$&") + ")", "ig"); <BR>temp = temp.replace(r, "<b style='color:Red;'>$1"); <BR>} <br><br>//恢复HTML标签 <BR>for (var i = 0; i < arr.length; i++) { <BR>temp = temp.replace("{[(" + i + ")]}", arr[i]); <BR>} <BR>textbox.innerHTML = temp; <BR>} <BR>highlight("textbox","百度,李彦宏"); <BR></script>


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板