【发布时间】:2011-03-17 02:23:01
【问题描述】:
我想将执行一行 JavaScript 的脚本标签附加到文档的开头,而不是附加一个空的并使用 src 属性的脚本标签。
这是我目前得到的:
<script type="text/javascript">
var scriptContents = 'alert("hi")';
var theScript = document.createElement('script');
theScript.type = 'text/javascript';
theScript.appendChild(scriptContents);
document.getElementsByTagName('head')[0].appendChild(theScript);
</script>
这是我遇到问题的 appendChild(scriptContents) 部分。如何更改此设置以使警报出现在浏览器中?
【问题讨论】:
-
嗯,只是举个例子——你的行为与使用
eval( theScript )简化的行为不同吗? -
是的,我知道这很有趣。我需要使用 JavaScript 来插入 HTML 元素,而这个 HTML 元素是一个脚本标签,里面有一些 JavaScript。
-
我想你可能误解了杰克在说什么。如果你只是想运行一个脚本,你可以使用 eval 函数。
-
出于难以理解的原因,客户端希望将脚本元素插入 DOM,而不是运行脚本。
-
但是……但是……将它插入 DOM 将运行脚本……我很困惑。 :P
标签: javascript html dom