8

为了让 Google Prettify 正确显示 HTML 代码示例,您应该替换所有的<with&lt;和所有的>with &gt;

您如何仅使用 JavaScript 自动执行该过程?

4

2 回答 2

21

如果将代码放在<xmp>元素中,则不需要转义 HTML 特殊字符,如测试中所示

 <h1>HTML using XMP</h1>
 <xmp class="prettyprint" id="htmlXmp"
 ><html>
   <head>
     <title>Fibonacci number</title>
   </head>
   <body>
     <noscript>
       <dl>
         <dt>Fibonacci numbers</dt>
         <dd>1</dd>
         <dd>1</dd>
         <dd>2</dd>
         <dd>3</dd>
         <dd>5</dd>
         <dd>8</dd>
         &hellip;
       </dl>
     </noscript>

     <script type="text/javascript"><!--
 function fib(n) {
   var a = 1, b = 1;
   var tmp;
   while (--n >= 0) {
     tmp = a;
     a += b;
     b = tmp;
   }
   return a;
 }

 document.writeln(fib(10));
 // -->
     </script>
   </body>
 </html>
 </xmp>
于 2012-05-04T02:38:10.773 回答
1

您可以使用 RegEx 对内容进行全局替换。

var regex = new RegExp("<", "g");
console.log(content.replace(regex, "&lt;"));
于 2012-05-04T02:37:54.630 回答