JS实现静态页面搜索并高亮显示功能完整示例
程序员文章站
2022-07-06 20:49:58
本文实例讲述了js实现静态页面搜索并高亮显示功能。分享给大家供大家参考,具体如下:
本文实例讲述了js实现静态页面搜索并高亮显示功能。分享给大家供大家参考,具体如下:
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>js搜索</title> </head> <body> <input id="key-word" class="key-word" value="请输入搜索内容" /> <button id="search-button">搜索</button> <div id="content" > <p>这是主体内容,有很多内容,很多很多啊啊啊……,比如1234abcd啊啊啊啊</p> <p>这是主体内容,有很多内容,很多很多啊啊啊……,比如1234abcd啊啊啊啊</p> <p>这是主体内容,有很多内容,很多很多啊啊啊……,比如1234abcd啊啊啊啊</p> <p>这是主体内容,有很多内容,很多很多啊啊啊……,比如1234abcd啊啊< d d>啊啊</p> </div> <script> function $(id){ return document.getelementbyid(id) } var putwordsobj = $('key-word'); putwordsobj.onfocus = function(){ if(this.value == '请输入搜索内容')this.value=''; } putwordsobj.onblur = function(){ if(!this.value)this.value='请输入搜索内容'; } //search $('search-button').onclick = function(){ var content = $('content').innerhtml; var keyword = $('key-word').value; content = search_do(content, keyword); $('content').innerhtml = content; //alert(content) } function search_do(content,keyword){ var keywordarr = keyword.replace(/[\s]+/g,' ').split(' '); var re; for(var n = 0; n < keywordarr.length; n ++) { //re = new regexp(">[\s\s]*?"+keywordarr[n]+"[\s\s]*?<\s","gmi"); re = new regexp(""+keywordarr[n]+"","gmi"); content = content.replace(re,'<span style="color:#0f0;background-color:#ff0">'+keywordarr[n]+'</span>'); } return content; } </script> </body> </html>
运行效果如下:
更多关于javascript相关内容感兴趣的读者可查看本站专题:《javascript数据结构与算法技巧总结》、《javascript数学运算用法总结》、《javascript排序算法总结》、《javascript遍历算法与技巧总结》、《javascript查找算法技巧总结》及《javascript错误与调试技巧总结》
希望本文所述对大家javascript程序设计有所帮助。
上一篇: 震撼图片,标记2010不完美的手图片。
下一篇: 动物界的伪装高手,用心去观察