0
後でクリックイベントを発生させる小さなウィジェット(GETメソッド)を読み込むjQueryプラグインをプログラミングしています。jQueryプラグイン - グローバルセレクタの動的クリック処理
プラグインを初期化するときに、要素セレクタがDOMにないことがあります。では、どのようにしてセレクタをクリックしてイベントを処理するためのグローバルな格納を行うことができますか?
私はあなたに理解しやすいようにコードを簡潔にしています。
(function($) {
var $template; // the global variable
$.fn.myPlugin = function() {
$(this).bind('click', function(e) {
$.get('/template.html', function(data) {
$('body').append(data);
$template = $(data); // set global variable here
}
}
// fire click event on global variable here, but $template is undefined
$(document).on('click', $template.find('.button'), function() {
// do something
}
}
})(jQuery);
ありがとう!
私はすでにそれについて考えましたが、別の方法ではないので、後でセレクタを使用できますか?とにかく助けてくれてありがとう! – pixelmusic
本当にそのブロックにハンドラを置かない場合は、 'Promise'を使ってフェッチを行い、次に' .then() 'を使ってハンドラを初期化することができます。 – kennasoft