1

因此,我尝试将一个广告代码动态添加到 DOM 中,如下所示:

<script type="text/javascript"><!--<![CDATA[
   JAVASCRIPT CODE
//]]>--></script>

如果我将此代码直接粘贴到源代码中,它可以工作,但是如果我尝试使用 jQuery 将它插入到 DOM 中,它会引发一些无法追踪的错误——至少我无法追踪它。其实这个:

javascript语法错误

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

element.html(data.content);

我已经尝试过的:

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

任何帮助将不胜感激,在此先感谢!

(请不要在意方法,必须用ajax完成。)

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

4

3 回答 3

1

试试这样:

<script type="text/javascript">
/* <![CDATA[ */
  ...
/* ]]> */
</script>
于 2013-03-01T09:29:32.937 回答
0

用这个

<script type="text/javascript">
 //<![CDATA[
 //YOUR CODE
//]]>
</script>

让我知道问题是否仍然存在。

于 2013-03-01T09:30:34.327 回答
0
<script type="text/javascript">
//<![CDATA[
        ...
//]]>
</script>

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

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

如果您确实需要与无法识别导致其内容显示在页面上的脚本或样式标签的非常旧的浏览器兼容,您可以使用以下命令:

<script type="text/javascript"><!--//--><![CDATA[//><!--
        ...
//--><!]]></script>

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

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

<![CDATA[您可以嵌入JSXML和 XHTML)文档中,而无需用XML 实体替换特殊XML字符,如<, >,等&<>&

于 2013-03-01T09:32:28.283 回答