0

我们使用的是 Ning 平台,为了在博客内容下方(但在评论部分之前)添加一个新的容器 DIV,我们在 body 标签之前添加了以下内容:

<script type="text/javascript">
if (typeof(x$) != 'undefined') {
x$("DIV.xg_module.xg_blog.xg_blog_detail.xg_blog_mypage.xg_module_with_dialog").after('<div>CONTENT GOES HERE </div>');
}
else{
}
</script>

但是,我们需要加载的内容是来自附属程序的 javascript,该程序向我们发送了此代码以添加到该 div 中:

<div style="width:750px;">
<div style="border-bottom:1px solid #FFFFFF;color:#FFFFFF;font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:bolder;margin-bottom:10px;padding-bottom:2px;text-transform:uppercase;">From Around the Web</div>
<script type='text/javascript'>
var _CI = _CI || {};
(function() {
var script = document.createElement('script');
ref = document.getElementsByTagName('script')[0];
_CI.counter = (_CI.counter) ? _CI.counter + 1 : 1;
document.write('<div id="_CI_widget_');
document.write(_CI.counter+'"></div>');
script.type = 'text/javascript';
script.src = 'http://widget.crowdignite.com/widgets/29949?_ci_wid=_CI_widget_'+_CI.counter;
script.async = true;
ref.parentNode.insertBefore(script, ref);
})(); </script>
</div>

显然,这是行不通的。

问题:有没有更好的方法来做到这一点?这只是所有冲突的 's 和 "s 的问题吗?有没有更简单的方法来格式化或输出它?它是否失败是因为在 JQuery 已经运行页面加载后它根本没有加载 javascript?我有一直在尝试不同的东西,但似乎都没有用,我的眼睛已经准备好从眼窝里跳出来了,因为我知道我错过了一些愚蠢的东西,所以我想我会多看几眼。

感谢您的任何帮助/想法/建议。

4

1 回答 1

0

尝试将新的 script 元素附加到页面上的 head 元素。大多数动态脚本加载器都会这样做。

有关示例,请参阅在页面中动态添加 javascript 文件的方法。

于 2013-03-21T04:19:49.407 回答