document.createElement(“腳本”)同步可以打電話給.js同步歸檔,然后立即使用它?<script type="text/javascript">
var head = document.getElementsByTagName('head').item(0);
var script = document.createElement('script');
script.setAttribute('type', 'text/javascript');
script.setAttribute('src', 'http://mysite/my.js');
head.appendChild(script);
myFunction(); // Fails because it hasn't loaded from my.js yet.
window.onload = function() {
// Works most of the time but not all of the time.
// Especially if my.js injects another script that contains myFunction().
myFunction();
};</script>這很簡單。在我的實(shí)現(xiàn)中,createElement在一個(gè)函數(shù)中。我考慮在函數(shù)中添加一些內(nèi)容,以便在返回控件之前檢查某個(gè)變量是否被實(shí)例化。但是,當(dāng)包含來自另一個(gè)我無法控制的站點(diǎn)的js時(shí),仍然存在著如何處理的問題。思想?編輯:我已經(jīng)接受了最好的答案,因?yàn)樗o出了一個(gè)很好的解釋所發(fā)生的事情。但是如果有人對(duì)如何改進(jìn)這個(gè)問題有任何建議的話,我對(duì)他們是開放的。這是我想做的事情的一個(gè)例子。// Include() is a custom function to import js.Include('my1.js');Include('my2.js');myFunc1('blarg');myFunc2('bleet');我只是不想太多地了解內(nèi)部結(jié)構(gòu),只想說:“我希望使用這個(gè)模塊,現(xiàn)在我將使用它中的一些代碼。
請(qǐng)問document.createElement(“腳本”)同步
梵蒂岡之花
2019-10-22 17:12:04