根据用户输入动态加载外部Javascript文件
我有N个不同的javascript文件,我只想根据用户输入在HTML代码中加载其中一个。有人能告诉我怎样才能做到这一点吗?谢谢 您始终可以根据某些输入动态地将根据用户输入动态加载外部Javascript文件,javascript,html,Javascript,Html,我有N个不同的javascript文件,我只想根据用户输入在HTML代码中加载其中一个。有人能告诉我怎样才能做到这一点吗?谢谢 您始终可以根据某些输入动态地将标记插入DOM: var myScript = document.createElement('script'); myScript.setAttribute('src', 'http://example.com/somescript_depending_on_user_input.js'); document.head.appendChi
标记插入DOM:
var myScript = document.createElement('script');
myScript.setAttribute('src', 'http://example.com/somescript_depending_on_user_input.js');
document.head.appendChild(myScript);
这将动态地将
元素注入DOM并加载所需的脚本。从远程url加载脚本后,浏览器将对其进行评估
如果您想等待外部javascript实际加载(这与向DOM中注入
元素不同),您可以订阅onload
事件。如果要调用仅在动态加载的脚本中定义的某些函数,这可能非常方便:
myScript.onload = function() {
alert('Youpee, my dynamic script was successfully loaded, I can use it in this callback');
};
还请注意,如果您希望此功能在IE中也起作用,您可能需要订阅
onreadystatechange
事件,如中所示。这将使您的代码能够跨不同的浏览器工作。您始终可以根据某些输入动态地将
标记插入DOM:
var myScript = document.createElement('script');
myScript.setAttribute('src', 'http://example.com/somescript_depending_on_user_input.js');
document.head.appendChild(myScript);
这将动态地将
元素注入DOM并加载所需的脚本。从远程url加载脚本后,浏览器将对其进行评估
如果您想等待外部javascript实际加载(这与向DOM中注入
元素不同),您可以订阅onload
事件。如果要调用仅在动态加载的脚本中定义的某些函数,这可能非常方便:
myScript.onload = function() {
alert('Youpee, my dynamic script was successfully loaded, I can use it in this callback');
};
还请注意,如果您希望此功能在IE中也起作用,您可能需要订阅onreadystatechange
事件,如中所示。这将使您的代码能够跨不同的浏览器工作