0

jquery を使用して、このページ ( http://www.fotocommunity.de/fotograf/tu-fotodesign/fotos/794400 )からすべての URL を取得しようとしています。

スクロールすると、サイトは AJAX で pix を追加します。ここに私のスクリプトの抜粋があります:

for (i=0; i<100; i++) 
{
    var zahl=$('#thumbnails LI').eq(i).attr('id');
    var time=$('#thumbnails LI').eq(i).attr('data-time');
    console.log(i + ': ' + zahl+ ' ' + time);
}

私は常に最初の 12 個のアイテムのみを取得します。すべてを取得する方法はありますか?クリックイベントも試しmouseoverましたが、常に最初の12要素でのみ機能します。

4

4 に答える 4

3

あなたが提供したウェブサイトは、「エンドレス」スクロール効果を使用しています。画像は XML ファイルから取り込まれます。
ここ
にあります。これを見つけるには、ソースを読むだけです。

于 2012-12-16T11:54:43.287 に答える
2

jquery each()はforループよりも優れたオプションです

このjqueryスニペットは、ページからすべてのhrefを取得します

var hrefs = $(document).find('a').map(function(){
    return this.href;
}).toArray();

写真のhrefだけを取得するには、いくつかのロジックを適用する必要がありますが、これで開始できます。

于 2012-12-16T12:08:09.693 に答える
1

または、超楽しい方法でやりたい場合!

var previous_scroll_top = 0;

var interval = setInterval(function(){
  $("body").scrollTop(3000000);

  // Don't do anything until we reach the bottom of the page!
  if (previous_scroll_top != $("body").scrollTop()) {
    previous_scroll_top = $("body").scrollTop();
    return true;
  } else {
    window.clearInterval(interval);
  }

  // Once we reach the bottom do this :)
  $('#thumbnails LI').each(function(index, el) {
    var zahl=$(el).attr('id');
    var time=$(el).attr('data-time');
    console.log(': ' + zahl+ ' ' + time);
  });
},1000);
于 2012-12-16T12:17:45.007 に答える
0

要素をループするには、jquery の each を使用する必要があります: http://api.jquery.com/each/

于 2012-12-16T11:48:18.120 に答える