コンテンツが縦並びになっているようなキュレーションサイトを作っています。
はじめに幾つかのコンテンツが表示されており、
スクロールで下に移動すると続きが表示される作りです。
これは以下のload.jsで管理しています(長くなってしまうため、端折っています)。
showContent()でコンテンツを追加しています。
load.js
JavaScript
1var loading = false; 2$(window).scroll(function() { 3 if ($(window).scrollTop() + $(window).height() + 250 >= $(document).height() ) { 4 if (loading == false) { 5 loading = true; 6 showContent(); 7 loading = false; 8 } 9 } 10});
各コンテンツにはお気に入りボタンが付いていて、クリックするとイベントリスナーで定義された動作が実行されます。これはfavorite.jsで管理しています。
favorite.js
JavaScript
1$(".favorite").click(function () { 2 $(this).toggleClass("favorite-after"); 3});
始めから表示されているコンテンツに対してはクリックイベントが実行されるのですが、load.jsで読み込まれた分に対してクリックイベントが実行されません。
コンソールを確認してもエラーは出ていません。
また、ブラウザ上で検証すると元から表示されていたコンテンツと同様にclassが記述されています。
イベントリスナーはそのコードを読み込んだ時点で表示されているものにしか適用されないのでしょうか。
ご存知の方がいましたらご回答をお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/17 06:38