参考链接:https://www.jb51.net/article/152700.htm

请访问以上链接。

本人纯搬迁,防止原作者删除。

<script>

var HtmlUtil = {

    /*1.用浏览器内部转换器实现html转码*/

    htmlEncode:function (html){

      //1.首先动态创建一个容器标签元素,如DIV

      var temp = document.createElement ("div");

      //2.然后将要转换的字符串设置为这个元素的innerText(ie支持)或者textContent(火狐,google支持)

      (temp.textContent != undefined ) ? (temp.textContent = html) : (temp.innerText = html);

      //3.最后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串了

      var output = temp.innerHTML;

      temp = null;

      return output;

    },

    /*2.用浏览器内部转换器实现html解码*/

    htmlDecode:function (text){

      //1.首先动态创建一个容器标签元素,如DIV

      var temp = document.createElement("div");

      //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持)

      temp.innerHTML = text;

      //3.最后返回这个元素的innerText(ie支持)或者textContent(火狐,google支持),即得到经过HTML解码的字符串了。

      var output = temp.innerText || temp.textContent;

      temp = null;

      return output;

    },

    /*3.用正则表达式实现html转码*/

    htmlEncodeByRegExp:function (str){

       var s = "";

       if(str.length == 0) return "";

       s = str.replace(/&/g,"&");

       s = s.replace(/</g,"<");

       s = s.replace(/>/g,">");

       s = s.replace(/ /g," ");

       s = s.replace(/\'/g,"'");

       s = s.replace(/\"/g,""");

       return s;

    },

    /*4.用正则表达式实现html解码*/

    htmlDecodeByRegExp:function (str){

       var s = "";

       if(str.length == 0) return "";

       s = str.replace(/&/g,"&");

       s = s.replace(/</g,"<");

       s = s.replace(/>/g,">");

       s = s.replace(/ /g," ");

       s = s.replace(/'/g,"\'");

       s = s.replace(/"/g,"\"");

       return s;

    }

  };

</script>
05-08 08:45
查看更多