【问题标题】:In this case, Do I need to using CDATA section?在这种情况下,我需要使用 CDATA 部分吗?
【发布时间】:2015-01-17 12:04:37
【问题描述】:

我是偶然发现这个代码的。

//<![CDATA[
jQuery(function() {
  jQuery('#gnb li a').each(function() {
    if (jQuery(this).attr('href')  ===  window.location.pathname) {
      jQuery(this).addClass('on');
    }
    if ("/seoul/timeline/"  ===  window.location.pathname) {
        jQuery('#home_item').addClass('on');
    }

  });
});
//]]>

那时,我还不知道 CDATA 部分。

当我搜索它时,它打算传递一个字面上的标签(例如&lt;script&gt;.....&lt;/script&gt;),因此它可以防止浏览器中出现错误。

在上面的代码中,我没有找到任何标签。

为什么要使用 CDATA 部分?

【问题讨论】:

    标签: jquery cdata


    【解决方案1】:

    这样做的目的是让您无需在 XHTML 文档(XML 的一种形式)中的 javascript 中转义 &lt;。当包含在 CDATA 部分中时,&lt; 被视为文字 &lt;

    HTML 本身不识别 CDATA 部分,这就是 CDATA 开始和结束标记在 JS cmets 中的原因。

    更多详情,类似问题已在What is CDATA in HTML?得到解答

    碰巧的是,您发布的示例无论有没有开始和结束 CDATA 部分的两行都可以正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-11
      • 2012-07-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多