Javascript innerHTML加载
我有以下代码:Javascript innerHTML加载,html,innerhtml,preload,Html,Innerhtml,Preload,我有以下代码: window.document.getElementById("bufferTopic").innerHTML = "<img src='einstein/einstein.png' width='800' height='600'><script type='text/javascript' language='javascript'>alert('test');</script>" 我把它放在一个脚本文件中。其思想是在div中缓存一些图像
window.document.getElementById("bufferTopic").innerHTML = "<img src='einstein/einstein.png' width='800' height='600'><script type='text/javascript' language='javascript'>alert('test');</script>"
我把它放在一个脚本文件中。其思想是在div中缓存一些图像,并在完成时运行脚本
但它不起作用
对它为什么不起作用有何评论
谢谢
编辑:脚本可以加载图像。加载后,您正在将javascript注入页面 它不会仅仅因为现在在页面上就执行 您可以阅读有关javascript执行模型的内容 不确定插入图像后为什么不能简单地写出javascript:
window.document.getElementById("bufferTopic").innerHTML = "<img src='einstein/einstein.png' width='800' height='600'>";
alert('test');
您遇到的问题与如何注入javascript有关。以下是您应该如何做到这一点的详细说明: 希望这有帮助
Bob确保脚本显示在bufferTopic元素之后的html中。或者,在window.onLoad中执行它 另外,一个是纯javascript:
var image = new Image();
image.src = 'einstein/einstein.png';
但形象尚未改变。innerHTML定义了它。@iEisenhower-与此无关。Javascript在页面中按顺序运行。所有脚本将首先加载,然后运行。不会拾取任何新注入的javascript。是的,访问网页时会加载/缓存我的脚本。抱歉,这有点新鲜。@iEisenhower-你为什么认为缓存与此有关。顺便说一下,请看我更新的答案。你链接到的文章描述了如何添加链接的JS文件,而不是如何注入JS代码以立即执行。