1. var HtmlUtil = {
  2. 2 /*1.用浏览器内部转换器实现html编码(转义)*/
  3. 3 htmlEncode:function (html){
  4. 4 //1.首先动态创建一个容器标签元素,如DIV
  5. 5 var temp = document.createElement ("div");
  6. 6 //2.然后将要转换的字符串设置为这个元素的innerText或者textContent
  7. 7 (temp.textContent != undefined ) ? (temp.textContent = html) : (temp.innerText = html);
  8. 8 //3.最后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串了
  9. 9 var output = temp.innerHTML;
  10. 10 temp = null;
  11. 11 return output;
  12. 12 },
  13. 13 /*2.用浏览器内部转换器实现html解码(反转义)*/
  14. 14 htmlDecode:function (text){
  15. 15 //1.首先动态创建一个容器标签元素,如DIV
  16. 16 var temp = document.createElement("div");
  17. 17 //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持)
  18. 18 temp.innerHTML = text;
  19. 19 //3.最后返回这个元素的innerText或者textContent,即得到经过HTML解码的字符串了。
  20. 20 var output = temp.innerText || temp.textContent;
  21. 21 temp = null;
  22. 22 return output;
  23. 23 },
  24. 24 /*3.用正则表达式实现html编码(转义)*/
  25. 25 htmlEncodeByRegExp:function (str){
  26. 26 var temp = "";
  27. 27 if(str.length == 0) return "";
  28. 28 temp = str.replace(/&/g,"&");
  29. 29 temp = temp.replace(/</g,"&lt;");
  30. 30 temp = temp.replace(/>/g,"&gt;");
  31. 31 temp = temp.replace(/\s/g,"&nbsp;");
  32. 32 temp = temp.replace(/\'/g,"'");
  33. 33 temp = temp.replace(/\"/g,"&quot;");
  34. 34 return temp;
  35. 35 },
  36. 36 /*4.用正则表达式实现html解码(反转义)*/
  37. 37 htmlDecodeByRegExp:function (str){
  38. 38 var temp = "";
  39. 39 if(str.length == 0) return "";
  40. 40 temp = str.replace(/&amp;/g,"&");
  41. 41 temp = temp.replace(/&lt;/g,"<");
  42. 42 temp = temp.replace(/&gt;/g,">");
  43. 43 temp = temp.replace(/&nbsp;/g," ");
  44. 44 temp = temp.replace(/'/g,"\'");
  45. 45 temp = temp.replace(/&quot;/g,"\"");
  46. 46 return temp;
  47. 47 },
  48. 48 /*5.用正则表达式实现html编码(转义)(另一种写法)*/
  49. 49 html2Escape:function(sHtml) {
  50. 50 return sHtml.replace(/[<>&"]/g,function(c){return {'<':'&lt;','>':'&gt;','&':'&amp;','"':'&quot;'}[c];});
  51. 51 },
  52. 52 /*6.用正则表达式实现html解码(反转义)(另一种写法)*/
  53. 53 escape2Html:function (str) {
  54. 54 var arrEntities={'lt':'<','gt':'>','nbsp':' ','amp':'&','quot':'"'};
  55. 55 return str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){return arrEntities[t];});
  56. 56 }
  57. 57 };

text-html 转译的更多相关文章

  1. 无限存储之胖文本数据库TTD(Thick Text Database)

    无限存储之胖文本数据库TTD(Thick Text Database) 阅读:  评论:  作者:Rybby  日期:  来源:rybby.com 所谓的“胖”就是多.大.丰富的意思,像我们平时看到的 ...

  2. HTML基础之标签简单认识

    简介 HTML(Hyper Text Markup Language)译为"超文本标记语言",主要是通过HTML标记对网页中的文本.图片.声音等内容进行描述 HTML之所以称为超文 ...

  3. HTML基础入门学习

    上一篇给大家介绍了学习HTML的准备工作,本文开始带大家步入HTML的学习 一.HTML基础 网页的组成: HTML:页面构成 css:页面样式表现 JavaScript:交互行为 HTML简介: H ...

  4. [译]试用新的System.Text.Json API

    译注 可能有的小伙伴已经知道了,在.NET Core 3.0中微软加入了对JSON的内置支持. 一直以来.NET开发者们已经习惯使用Json.NET这个强大的库来处理JSON. 那么.NET为什么要增 ...

  5. 【译】System.Text.Json 的下一步是什么

    .NET 5.0 最近发布了,并带来了许多新特性和性能改进.System.Text.Json 也不例外.我们改进了性能和可靠性,并使熟悉 Newtonsoft.Json 的人更容易采用它.在这篇文章中 ...

  6. [译]Angular2 和TypeScript -- 一次简要的预览

    原文链接:https://www.infoq.com/articles/Angular2-TypeScript-High-Level-Overview 作者:  Yakov Fain Posted o ...

  7. [译]:Xamarin.Android平台功能——位置服务

    返回索引目录 原文链接:Location Services. 译文链接:Xamarin.Android平台功能--位置服务 本部分介绍位置服务以及与如何使用位置提供商服务 Location Servi ...

  8. [译]:Xamarin.Android开发入门——Hello,Android Multiscreen深入理解

    原文链接:Hello, Android Multiscreen_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android Multiscreen深入理解. 本 ...

  9. [译]:Xamarin.Android开发入门——Hello,Android Multiscreen快速上手

    原文链接:Hello, Android Multiscreen Quickstart. 译文链接:Hello,Android Multiscreen快速上手 本部分介绍利用Xamarin.Androi ...

  10. [译]:Xamarin.Android开发入门——Hello,Android深入理解

    返回索引目录 原文链接:Hello, Android_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android深入理解 本部分介绍利用Xamarin开发And ...

随机推荐

  1. UIPageViewController看这篇就够了

    先说初始化 - (UIPageViewController *)PageViewController{ if(!_PageViewController){ //书脊位置,只有在UIPageViewCo ...

  2. SQLite 小调研

    一. 概况: SQLite 是 D. Richard Hipp 于 2000 年采用 C 语言编写的一个轻量级.跨平台的关系型数据库,支持大部分 SQL92 标准(比如视图.事务.触发器.blob 数 ...

  3. MySQL 开始

    安装,配置环境变量啥的,网上一抓一大堆,不说了.就说我再实际操作中遇到的问题. 1   添加自增列 点击apply,直接提示一个错误....百思不得其解..上图... 添加不了自增列....好恐怖.. ...

  4. nginx 自启动

    转载:https://www.cnblogs.com/cxscode/p/8262319.html 安装Nginx 下载windows版nginx (http://nginx.org/download ...

  5. 在Linux下如果要使用接口标志要加什么头文件吗?因为我在使用IFF_UP时会出错,说是未定义

    头文件一般放在/usr/include目录下,用grep 'IFF_UP' /usr/include/*.* |less这个命令查找一下在哪个头文件里面有定义.   追问 嗯~这个方法确实可以查找到一 ...

  6. MyBatis中大于和小于号的转义写法

    mybatis 中 SQL 写在mapper.xml文件中,而xml解析 < .>.<=.>= 时会出错,这时应该使用转义写法. 方式一 < <= > > ...

  7. delphi 安卓开发常用

    delphi 安卓开发有几个常用的pas: FMX.Helpers.Android, Androidapi.JNI.Net, Androidapi.JNI.GraphicsContentViewTex ...

  8. QueryList 来做采集是什么样子

    采集百度搜索结果列表的标题和链接. $data = QueryList::get('https://www.baidu.com/s?wd=QueryList') // 设置采集规则 ->rule ...

  9. JavaScript中的节流和防抖

    节流: 在规定时间内,多次触发事件,但是只执行一次 场景:输入框搜索,地图渲染 优化用户体验 /** * 节流 规定时间内不管触发多少次只执行一次 * @param {Function} fn 实际要 ...

  10. 经典换根dp——hdu2196

    给定一棵边权树,求距离每个点最远的点,输出这个距离 #include<bits/stdc++.h> using namespace std; #define N 10005 ]; int ...