要素が完全に読み込まれた後、どのようにクリックイベントを実行できますか?
次のコードは、この目的のためにulタグにロードイベントを付加することを意図していますが、動作しません。
jQuery(function($){
$(".nav-tabs").on("load", function () {
// Breakpoint A: Control never gets here
if (typeof (Storage) === "undefined")
return;
$(localStorage.setItem("CanTabId")).click();
})
// Breakpoint B: No click event seems to be attached
})
jQueryの無知で、私はいくつかの説明を考えることができます:
- イベントは決して添付されません。私はこれをサポートしていますが、ulにはブレークポイントBでクリックイベントがないことがわかります。jQueryがイベントを別の方法で処理すると思われますが、そうは思わないでしょう。
- イベントは添付されていますが、負荷イベントはすでにulに対して発生しています。
- 後でjQueryがページに対して行うことは、クリックイベントを削除したことです。
注 - このイベントは機能します:
$(".nav-tabs li a").on("click", function () {...))
私はSO、またはどこでも答えを見つけることができませんでした。
誰かがこれを行う正しい方法を教えてもらえますか?本当にありがとう。
回答:
回答№1は1私は実際には、 "要素がロードされた"イベントがまだサポートされているかどうかを知ることはできませんが、あなたがすでに実際に ドキュメント準備完了イベントハンドラ。これで十分です。
$(function() {
// document ready has fired - all your elements should have loaded.
if (typeof (Storage) === "undefined")
return;
$(localStorage.getItem("CanTabId")).click();
})
また、バグの可能性もあります。 setItem
添付するとき click
イベントハンドラ - これが必要かどうか getItem
?
$(localStorage.getItem("CanTabId")).click();