js转化html字符

js转化html字符,第1张

        /*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(/

            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 

      }

    }

编辑时的设置:这跟编辑器的编码环境相关,把编辑器的默认编码改为UTF-8即可。

运行时的设置:HTML最终要浏览器来解释的,所以在head内加入<meta>声明编码即可。

<head>

    <meta charset="UTF-8" />

</head>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6156447.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存