通过JS将脚本附加到HTML

时间:2018-05-04 12:47:55

标签: javascript

我正在尝试添加运行外部脚本,该脚本基本上将HTML元素附加到页面。我不能只使用脚本标记,因为我需要它以异步方式运行,但是当我使用<script async src="...">时,脚本会将元素附加到页面底部,而不是它所在的类。被召唤。

因此我创建了此脚本以将外部脚本标记附加到页面。

var x = document.createElement("SCRIPT");
x.src = '//rss.bloople.net/?url=https%3A%2F%2Fwww.coindesk.com%2Ffeed%2F&limit=5&showicon=true&type=js';

var newsContainer = document.createElement("div");
newsContainer.className = "newsContainer";
newsContainer.innerHTML = x;

document.getElementById("newsContainerId").appendChild(newsContainer);

然而,这不起作用,因为它将此附加到页面

  

[object HTMLScriptElement]

2 个答案:

答案 0 :(得分:0)

更改newsContainer.appendChild(x);

var x = document.createElement("SCRIPT"); x.src = '//rss.bloople.net/?url=https%3A%2F%2Fwww.coindesk.com%2Ffeed%2F&limit=5&showicon=true&type=js'; var newsContainer = document.createElement("div"); newsContainer.className = "newsContainer"; newsContainer.appendChild(x); document.getElementById("newsContainerId").appendChild(newsContainer); //

<div id="newsContainerId">Container</div>
user

答案 1 :(得分:0)

问题出现在这里:

newsContainer.innerHTML = x;

x被评估 - 你不能真正对这个对象做什么。你应该使用x.innerHTML让它做你想要的。 JavaScript x仅将[object HTMLScriptElement]本身描述为newsContainer,这就是添加到x的内容。

首先尝试跳过此推送并将元素newscontainer添加到var x = document.createElement("SCRIPT"); x.src = '//rss.bloople.net/?url=https%3A%2F%2Fwww.coindesk.com%2Ffeed%2F&limit=5&showicon=true&type=js'; var newsContainer = document.createElement("div"); newsContainer.className = "newsContainer"; newsContainer.appendChild(x); document.getElementById("newsContainerId").appendChild(newsContainer);

-pony-byggesættet-har-ikke-bare-vundet-vores-hænder-men-ogsa-vores-hjerter-