首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在脚本标记中动态添加CDATA时出现语法错误

问在脚本标记中动态添加CDATA时出现语法错误
EN

Stack Overflow用户
提问于 2013-03-01 09:27:24
回答 3查看 3.7K关注 0票数 1

所以有一个广告代码,我试图动态地添加到DOM中,如下所示:

代码语言:javascript
复制
<script type="text/javascript"><!--<![CDATA[
   JAVASCRIPT CODE
//]]>--></script>

如果我将这段代码直接粘贴到源代码中,它就能工作,但是如果我尝试用jQuery将它插入到DOM中,它会抛出一些无法跟踪的错误--至少我无法跟踪它。其实这是:

​

​

有趣的是,Firebug将此错误连接到包含jQuery的页面中的随机脚本。广告代码以这样的方式插入到DOM中/element是一个jQuery对象/:

代码语言:javascript
复制
element.html(data.content);

我尝试过的是:

  1. 我尝试删除<!-- --> html注释标记。
  2. 我尝试将wole代码包装到由jQuery动态创建的脚本标记中。
  3. 我甚至试图删除CDATA标签,但这破坏了一切,我认为这对广告经理公司提供的主要广告处理程序脚本很重要。

任何帮助都将不胜感激,谢谢提前!

(请不要关心这个方法,它必须用ajax来完成。)

编辑:问题仍然存在,但我认为广告代码一定有问题,所以我接受了这个主题的第一个有用的答案。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-03-01 09:32:28

代码语言:javascript
复制
<script type="text/javascript">
//<![CDATA[
        ...
//]]>
</script>

<!-- (For styles, it is different) -->

<style type="text/css">
/*<![CDATA[*/
        ...
/*]]>*/
</style>

如果您确实需要与不识别脚本或样式标记的非常旧的浏览器兼容,从而导致它们的内容显示在页面上,则可以使用以下方法:

代码语言:javascript
复制
<script type="text/javascript"><!--//--><![CDATA[//><!--
        ...
//--><!]]></script>

<!-- (For styles, it is different) -->

<style type="text/css"><!--/*--><![CDATA[/*><!--*/
        ...
/*]]>*/--></style>

使用<![CDATA[,您可以将JS嵌入到XML (和XHTML)文档中,而无需通过XML实体<、>、&等替换<、>、&等特殊的XML字符。

票数 0
EN

Stack Overflow用户

发布于 2013-03-01 09:29:32

就像这样:

代码语言:javascript
复制
<script type="text/javascript">
/* <![CDATA[ */
  ...
/* ]]> */
</script>
票数 2
EN

Stack Overflow用户

发布于 2013-03-01 09:30:34

用这个

代码语言:javascript
复制
<script type="text/javascript">
 //<![CDATA[
 //YOUR CODE
//]]>
</script>

如果问题仍然存在,请告诉我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15154407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档