我有这样一段代码在一个网站:如何检查脚本是否正在加载外部数据?
<div id="test">
<script type="text/javascript">
/*<![CDATA[*/
parameter1 = 'whatever1';
parameter2 = 'whatever2';
parameter3 = 'whatever3';
etc.
/*]]>*/
</script>
<script src='external js file'></script>
</div>
该代码被用来从外部源加载在该网站的图像。当他们(无论他们是谁)正确配置外部源时,div'测试'将显示图像。如果不是,div将是空白的。
好吧,现在让我们假设该网站中的另一个div必须显示特定的内容(取决于图像是否加载),如果不是,则显示不同的内容。
外部信息源不可访问/可编辑,因此无法确定它们(无论他们是谁)正在为要加载的图像发送数据。
那么,有没有一种方法可以在代码中预测/检测div'test'是否正在加载数据?
编辑2016年4月12日
最后我都用这个,感谢cFreed建议:
var target = document.getElementById('test');
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
//stuff;
});
});
var config = { attributes: true, childList: true, characterData: true };
observer.observe(target, config);
你能展示一个外部脚本*可能会导致什么结果的例子吗? –
你可以编辑fetcher代码吗?从获取请求中监视或抛出事件是最容易的,并根据请求的状态/结果填充第二个div,而不是试图让第二个div对第一个div的内容做出反应。 – TheJim01
嗨ScottMarcus和TheJim01。 div'测试'代码与http://support.pencidesign.com/forums/topic/inserting-video-on-post/ – b1919676