如果我将新脚本加载到页面中,是否可以访问已定义的函数?
喜欢:
function parentFunction() {
// do something
}
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "http://somedomain.com/somescript";
document.head.appendChild(s);
runScript();
当我尝试外部脚本时,我得到了:
function runScript(){
alert('new code'); // this works
parentFunction(); // Uncaught ReferenceError: parentFunction is not defined
}
最佳答案
您必须将parentFunction
导出到闭包之外,使其全局。
您可以通过将其设置为window
的属性来实现:
function parentFunction() {
// do something
}
window.parentFunction = parentFunction;
或更短:
window.parentFunction = function() {
// do something
};
关于javascript - 父级的访问功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22519797/