我正在尝试将Reddit按钮添加到我的网站,但它们不是异步的,而且Reddit往往会滞后,从而降低页面加载速度。当我查看脚本返回的内容时,得到的结果如下所示:
(function () {
var write_string = ...
document.write(write_string);
})()我尝试在页面加载后将其注入我的页面。在页面加载后,我在javascript中尝试了这两种方法,但都没有用:
placeholder.innerHTML = '<script type="text/javascript" src="http://www.reddit.com/buttonlite.js?i=5"></script>'
var js = document.createElement('script');
js.type = 'text/javascript';
js.src = 'http://www.reddit.com/buttonlite.js?i=5';
placeholder.appendChild(js);其中placeholder是一个DOM元素<div class="reddit-button"></div>。你知道我该怎么做吗?
发布于 2012-02-05 20:54:07
您可以“覆盖”document.write方法:
window.onload = function() {
var oScript = document.createElement("script");
document.write = function(text) {
document.getElementById("placeholder").innerHTML += text;
};
oScript.src = "http://www.reddit.com/buttonlite.js?i=0";
document.body.appendChild(oScript);
};这样,外部代码就可以随意调用document.write,并将其推送到文档中的适当位置。
在Chrome,火狐和IE9下Live test case测试正常,所以我猜应该足够了。
https://stackoverflow.com/questions/9148438
复制相似问题