多关键词高亮显示

引入关键词文件,符合有条件的背景色高亮显示,也可取消。

html 复制代码
 <div id="testHtml">
     <p>写入的文本</p>
     <p>关键词</p>
 </div>
javascript 复制代码
var str ='多个关键词,关键词文件,关键词'
var strL = str.replace(/,/g,'|')     //将关键词用竖线分割
javascript 复制代码
function btnClick(){
    var Htmlstr = $("#testHtml").html()
    var reg = new RegExp('('+strL+')', 'g')
    $("#testHtml").html( Htmlstr.replace(reg,`<span style="background-color:#EEC900;">$1</span>`) )
}


function removeBtnClick(){
    var Htmlstr = $("#testHtml").html()
    var reg = new RegExp('<span style="background-color:#EEC900;">(' + strL + ')</span>','gm')
    $("#testHtml").html( Htmlstr.replace(reg,`$1`) )
}

第二种方式,多种颜色高亮显示

javascript 复制代码
var colors =  [
        "#ef0c0c",
        "#EEC900",
        "#9F79EE",
        "#FFC1C1"
    ]


var keywordsdetail= []
    keywordsdetail = str.split(',')


function  highlight(str,params) {
        var reg=new RegExp(("("+params.keys+")"),"gm");
        var color=params.color || '#f00';
        var replace='<span style="background-color:'+color+';">'+params.keys+'</span>';
        return str.replace(reg,replace);
    }
function btnClick(){//显示多种颜色关键词高亮按钮
        for(var i=0;i<keywordsdetail.length;i++){
            var params={
                keys:keywordsdetail[i],
                color:colors[i]
            }
            
            $("#testHtml").html(highlight($("#testHtml").html(),params));
        }
 }
相关推荐
weixin_4368040713 小时前
图片在线预览工具 - 输入URL即刻查看远程图片
html·媒体
weixin_5841214316 小时前
HTML+layui表单校验范围值,根据条件显示隐藏某输入框
前端·html·layui
0思必得016 小时前
[Web自动化] BeautifulSoup导航文档树
前端·python·自动化·html·beautifulsoup
松涛和鸣18 小时前
DAY47 FrameBuffer
c语言·数据库·单片机·sqlite·html
西凉的悲伤18 小时前
html制作太阳系行星运行轨道演示动画
前端·javascript·html·行星运行轨道演示动画
hxjhnct20 小时前
响应式布局有哪些?
前端·html·css3
怎么就重名了20 小时前
Kivy的KV语言总结
前端·javascript·html
永远的WEB小白20 小时前
鼠标悬停显示提示文字 html+css
前端·javascript·html
梦凡尘20 小时前
Marked.js 的使用及相关问题解决
前端·js
winfredzhang21 小时前
[全栈实战] 从零打造一个“沉浸式”私人云端阅读器 (Node.js + EPUB.js)
javascript·css·node.js·html·extjs·epub阅读器