我们通过https://athirdpartysite.com/lib.js异步加载第三方脚本。第三方脚本包括我们想要在用户点击元素时调用的函数FSFB.fbcaller('123abc')。我们使用innerHTML生成#invoker。在将onclick事件附加到#invoker之前,如何确保函数FSFB.fbcaller('123abc')可用?
window.onload = function () {
function insertAfter(referenceNode, newNode) {
referenceNode.parentNode.insertBefore(newNode,
referenceNode.nextSibling);
}
ar el = document.createElement("div");
el.id = "invoker-container";
el.innerHTML = '<ul><li></li><li><div id="invoker"></div></li></ul>';
var afterel = document.querySelector(".master-container");
insertAfter(afterel, el);
}
答案 0 :(得分:2)
您可以使用此条件进行测试:
if (window.FSFB && window.FSFB.fbcaller) {
// Function is available
}
答案 1 :(得分:0)
if(typeof FSFB == "function"){
if(typeof FSFB.fbcaller == "function"){
//function exist
}
}
这应该有效