だから私はエンドレススクロールを使用しています.xピクセルをスクロールすると、ページに新しいオブジェクトが追加されます. しかし、jQuery を使用して、新しい要素 (class
またはid
) がページに追加されたかどうかを確認するにはどうすればよいでしょうか?
(新しい要素が追加された場合、新しい要素でjQueryを実行したいので、これを確認したい)。
だから私はエンドレススクロールを使用しています.xピクセルをスクロールすると、ページに新しいオブジェクトが追加されます. しかし、jQuery を使用して、新しい要素 (class
またはid
) がページに追加されたかどうかを確認するにはどうすればよいでしょうか?
(新しい要素が追加された場合、新しい要素でjQueryを実行したいので、これを確認したい)。
append() の後に .length を使用して、存在するかどうかを確認するだけです
$('#elemId').length;
そのようです...
if($('#elemId').length > 0){ //your code here };
または、独自の関数を作成します....
jQuery.fn.Exists = function(){
return jQuery(this).length > 0;
};
次に、それを使用して true または false を返します...
if($('#elemId').Exists()){ //your code here };
または、 livequery() プラグインを使用できます...
$('#elemID').livequery(function()
{
// do things here like binding new events and stuff.
// this function is called when an object is added.
// check the API for the deletion function and so on.
});
jQuery Web サイトでプラグインを見つけることができなくなったようですが、ある時点では存在していました
DOMNodeInserted を試すこともできます...
$(document).bind('DOMNodeInserted', function(e) {
console.log(e.target, ' was inserted');
});
on()....セレクターが常に同じである場合に使用できます...
たとえば、スクロールすると、常に class="newDiv" という名前の新しい div が追加されているとします。
次に、実行したいjquery....イベントをバインドしてクリックしたい場合...
$(document).on( 'click', '.newDiv', function(){ //your code here
});