`
zuroc
  • 浏览: 1307347 次
  • 性别: Icon_minigender_1
  • 来自: 江苏
社区版块
存档分类
最新评论

js高亮关键词代码备忘

阅读更多
当然是抄的啊:)
管理后台用这个很方便

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
.highlight {
background-color:#ff0; color:#000;
}
</style>
</head><body>
<div id="Stxt">
美丽的大自然和谐社会共同发展

</div>
<textarea style="display: none;" id="txtInput">和谐
发展</textarea>
<script type="text/javascript">
/*----------------------------------------* * 使用 js 标记高亮关键词 by markcxz(markcxz@aol.com)
* 参数说明:
* obj: 对象, 要进行高亮显示的html标签节点.
* hlWords: 字符串, 要进行高亮的关键词词, 使用 竖杠(|)或空格 分隔多个词 .
* cssClass: 字符串, 定义关键词突出显示风格的css伪类.
* 参考资料: javascript HTML DOM 高亮显示页面特定字词 By shawl.qiu
\*----------------------------------------*/
function MarkHighLight(obj,hlWords,cssClass){

    hlWords=AnalyzeHighLightWords(hlWords);
  
    if(obj==null || hlWords.length==0)
        return;
    if(cssClass==null)
        cssClass="highlight";
    MarkHighLightCore(obj,hlWords);
  
    //------------执行高亮标记的核心方法----------------------------
    function MarkHighLightCore(obj,keyWords){
        var re=new RegExp(keyWords, "i");
      
        for(var i=0; i<obj.childNodes.length; i++){
      
            var childObj=obj.childNodes[i];
            if(childObj.nodeType==3){
                if(childObj.data.search(re)==-1)continue;
                var reResult=new RegExp("("+keyWords+")", "gi");
                var objResult=document.createElement("span");
                objResult.innerHTML=childObj.data.replace(reResult,"<span class='"+cssClass+"'>$1</span>");                   
                if(childObj.data==objResult.childNodes[0].innerHTML) continue;
                obj.replaceChild(objResult,childObj);                                    
            }else if(childObj.nodeType==1){
                MarkHighLightCore(childObj,keyWords);
            }
        }
    }      

    //----------分析关键词----------------------
    function AnalyzeHighLightWords(hlWords)
    {
        if(hlWords==null) return "";
        hlWords=hlWords.replace(/\s+/g,"|").replace(/\|+/g,"|");          
        hlWords=hlWords.replace(/(^\|*)|(\|*$)/g, "");
      
        if(hlWords.length==0) return "";
        var wordsArr=hlWords.split("|");
      
        if(wordsArr.length>1){
            var resultArr=BubbleSort(wordsArr);
            var result="";
            for(var i=0;i<resultArr.length;i++){
                result=result+"|"+resultArr[i];
            }              
            return result.replace(/(^\|*)|(\|*$)/g, "");

        }else{
            return hlWords;
        }
    }  
  
    //-----利用冒泡排序法把长的关键词放前面-----  
    function BubbleSort(arr){      
        var temp, exchange;  
        for(var i=0;i<arr.length;i++){          
            exchange=false;              
            for(var j=arr.length-2;j>=i;j--){              
                if((arr[j+1].length)>(arr[j]).length){                  
                    temp=arr[j+1]; arr[j+1]=arr[j]; arr[j]=temp;
                    exchange=true;
                }
            }              
            if(!exchange)break;
        }
        return arr;          
    }

}
//----------------end------------------------
  
function MarkHighLightDemo(){
var txtObj=document.getElementById("txtInput");
var divObj=document.getElementById("Stxt");
MarkHighLight(divObj,txtObj.value);
}
MarkHighLightDemo()
</script>
</body></html>
分享到:
评论

相关推荐

    js代码高亮显示 JavaScript代码高亮 jsp

    JavaScript代码高亮显示是提高代码可读性的关键工具,通过使用像Highlight.js或Prism.js这样的库,可以在JSP页面上轻松实现这一功能。了解如何正确地集成和配置这些库,可以帮助开发者创建更专业、更易于阅读的代码...

    代码备忘录(经典的代码备忘录)

    6. **代码预览和格式化**:为了方便查看和理解,软件通常会提供代码高亮显示和自动格式化功能,让代码看起来更整洁,读起来更容易。 7. **个性化设置**:用户可以根据自己的喜好调整界面布局,设置快捷键,甚至...

    jQuery查找关键词文字高亮显示代码

    本示例中的"jQuery查找关键词文字高亮显示代码"是一个实用的功能,用于提升用户体验,特别是在用户进行搜索时。当用户在搜索框中输入关键词后,页面上与关键词匹配的部分会被高亮显示,使得用户能快速定位到相关内容...

    【原创】多关键词搜索高亮标红关键词的JS方法

    实现JS多关键词高亮方法,可以改造查询条件直接引用该JS方法使用,更加简单简洁实现查询高亮关键词。多关键词当前以空格隔开演示。

    代码高亮显示javascript插件

    "代码高亮显示JavaScript插件"是专门用于在Web页面中美化和突出显示JavaScript代码的工具,它能够将原始的黑白文本代码转换为具有不同颜色、字体和样式的视觉盛宴。本文将深入探讨这一主题,详细介绍JavaScript代码...

    jQuery高亮显示关键词代码.zip

    《jQuery高亮显示关键词代码详解》 在网页开发中,我们常常需要实现一种功能:当用户搜索特定关键词后,将这些关键词在页面中高亮显示。这种效果不仅可以提高用户的阅读体验,也能帮助用户快速定位到他们关心的信息...

    jQuery高亮关键词搜索

    总结,jQuery高亮关键词搜索是通过结合JavaScript的字符串处理方法和jQuery的DOM操作实现的。通过创建合适的正则表达式,找出关键词,然后用HTML元素包裹它们,我们可以轻松地为网页上的文本添加高亮效果。在实际...

    jQuery关键词查找高亮显示代码.zip

    另一个JavaScript文件可能是`searchHighlight.js`,这是一个自定义脚本,实现了关键词查找和高亮显示的逻辑。它会监听搜索框的`keyup`事件,每当用户输入新的字符时,就触发查找和高亮的过程。 在`searchHighlight....

    使用 javascript 标记高亮关键词

     }在JavaScript中,对文本内容进行关键词高亮是一项常见的需求,特别是在搜索结果展示或者代码高亮时。本段代码提供了一个名为`MarkHighLight`的函数,它实现了对HTML元素内指定关键词的高亮标记功能。 首先,我们...

    页面代码高亮度显示JS代码

    "页面代码高亮度显示JS代码"是一个专门用于在网页上实现这一功能的JavaScript库。这种库通常会通过解析代码的语法结构,为不同的语言元素(如关键字、变量、字符串等)赋予不同的颜色或样式,从而提升代码的可读性。...

    jQuery高亮显示关键词代码

    本教程将详细讲解如何利用jQuery实现高亮显示关键词的功能,以便于用户在搜索结果中快速定位到他们关心的关键词。 首先,我们需要了解jQuery的核心概念。jQuery对象是jQuery库的核心,它封装了DOM元素,使得操作DOM...

    js实现插入代码按代码格式关键词等高亮显示

    综上所述,"js实现插入代码按代码格式关键词等高亮显示"涵盖了从代码插入到格式化再到关键词高亮的一系列步骤,通过JavaScript和相关的库工具,我们可以创建出专业且美观的代码展示效果。在实际项目中,根据需求选择...

    jQuery查找关键词文字高亮显示代码.zip

    接着,`js`文件夹中的JavaScript代码是整个功能的核心。在jQuery中,我们通常会使用`$(document).ready()`来确保在页面加载完成后执行相关的脚本。在这个示例中,当用户点击搜索按钮时,jQuery会选择输入框中的文本...

    javascript关键字高亮代码

    文档中的JavaScript代码实现了关键词高亮的功能。具体来说,这段脚本定义了一个名为`keys`的数组,每个元素都包含关键词、对应的URL和颜色。然后遍历这些关键词,并使用DOM操作将匹配到的文本包裹在一个带有特定样式...

    javascript实现代码高亮

    总的来说,`highlight.js`为JavaScript实现代码高亮提供了一个强大且灵活的解决方案。它不仅能够美化代码显示,还能帮助开发者轻松地定制和扩展高亮功能,提升网页的用户体验。通过深入学习和实践,我们可以更好地...

    y内容查找高亮显示代码.rar_telephoneot1_y内容查找高亮显示代码

    压缩包内的"jiaoben5742"可能是代码的示例文件,可能包含了实现上述功能的HTML、CSS和JavaScript代码。HTML文件可能包含搜索框和搜索结果的结构,CSS文件定义了高亮样式的规则,而JavaScript文件则是整个功能的核心...

    JS 代码高亮加复制代码

    1. JavaScript代码高亮的重要性及其对阅读体验的影响。 2. 介绍并比较几种流行的代码高亮库,如Prism.js和Highlight.js,以及它们的使用方法。 3. HTML5的`clipboard` API介绍及其在实现复制功能中的应用。 4. 第三...

    Js+CSS高亮表格代码+方法

    Js+CSS高亮表格代码+方法

    C# HTML SQL常用JS版代码高亮

    这可能是包含实现代码高亮的JavaScript代码或相关的配置文件。根据资源描述,用户可能需要查看这个文件来了解如何在项目中应用高亮功能,或者将其与自己的CSS样式结合以定制代码显示效果。 总之,本资源提供的JS版...

    C#代码高亮示例代码

    在编程世界中,代码高亮是一项非常重要的功能,它能够帮助开发者更好地阅读和理解代码,尤其是在处理大量或者复杂的源代码时。本示例是关于"C#代码高亮"的实践,同时也涉及到VB语言的高亮展示。下面我们将深入探讨这...

Global site tag (gtag.js) - Google Analytics