サードパーティのスクリプトをhttps://athirdpartysite.com/lib.js経由で非同期に読み込みます。サードパーティスクリプトには、ユーザーが要素をクリックしたときに呼び出す関数FSFB.fbcaller( '123abc')が含まれています。 innerHTMLを使用して#invokerを生成します。 #invokerにonclickイベントを付加する前に、関数FSFB.fbcaller( '123abc')が利用可能であることを確認するにはどうすればよいですか?外部jsの関数がonclick関数を呼び出す前に利用可能かどうかチェックしてください
あなたはこの条件を使用してテストすることができます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);
}
あなたがエラーを取得している動作するはず?もしそうなら、どのようなエラー? –
チェックのタイプで答えを使用するのは、定義されていないとエラーをスローしないため、ターゲットが実際に変数ではない関数になっているので、ベストです。 –
@MaherFattouh?いずれの答えも未定義のエラーを投げます。 * "変数ではない関数" * - 変数と関数は直交する概念です。変数は関数を保持できます。 – cdhowie