【jQuery】appendで追加したdiv要素内のスクロールイベントが取得できないときの解決策

以前、htmlにappendで追加した要素のスクロールを取得しようとしてできないという問題がありました。

ハマってしまったのでメモとして残しておきたいと思います。

スクロールを取得するときの記述によっては動かなくなるので注意が必要です。

スクロールの取得

正しい書き方

jQuery('#scroll_box').scroll(function(){
	~スクロールされた時の処理~
});

動かなくなる書き方

jQuery(document).on('scroll', '#scroll_box', function(){
	~スクロールされた時の処理~
});

スクロール取得の記述はappendの後に記述する

append処理の記述とスクロールの記述が別々のファイルで書かれていたりすると動かなくなることがあるのでスクロール取得の処理はappendの後に記述しておく。

コメント

タイトルとURLをコピーしました