我有一个HTML页面,该页面按顺序执行以下操作:
显示静态HTML内容
使用JavaScript替换一些静态内容
使用JavaScript加载ActiveX组件
问题在于,即使显示ActiveX组件的代码位于步骤2之后,也总是在步骤3之后执行步骤2(并且加载ActiveX组件需要花费几秒钟)。最初,ActiveX组件通常是使用object标签加载的,但是为了解决该问题,我将加载移至以下功能(在步骤3中执行):
function afterLoadActiveX(){
var mainForm = document.forms['getupdates'];
var activeXObject = document.createElement('object');
activeXObject.setAttribute('id','webagent');
activeXObject.setAttribute('classid','CLSID:53N50R3D-4246-65Z6-1234-44B989ECA335');
activeXObject.setAttribute('height','1');
activeXObject.setAttribute('width','1');
activeXObject.setAttribute('align','baseline');
document.body.appendChild(activeXObject);
}
我该怎么做才能使用JS更改内容,以便立即看到更改?在此之后,在body onload方法中执行afterLoadActiveX,然后在body-onload中执行用于更改内容的JS(步骤2)。
最佳答案
您可以在更改DOM的函数结尾处调用afterLoadActiveX()
。
关于javascript - 在ActiveX组件完成加载之前,使用JS动态更改HTML内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1176479/