0

プラグインのウェイポイントを使用します ( http://imakewebthings.com/jquery-waypoints/ )

*編集: 実用的なソリューション: http://pastebin.com/x95Qf7m8 *

私がやろうとしているのは、「share-this」タグが下にスクロールされたときに、リンクに含まれる共有ウィジェットをロードすることです。

headjs を使用して外部スクリプトをロードしているため、document.ready の単なる置き換えである head.ready の使用に気付くかもしれません。

私の質問は簡単です。クリックによってトリガーされたときに機能するのに、ウェイポイントプラグインを使用していないのはなぜですか? どんな助けでも大歓迎です

私のウェブサイト : http://www.entendu.info

head.ready(function() {


$('.share-this').waypoint(function(event, direction) {
   if (direction === 'down') {

    var contentId = $('.share-this').attr('rel');
    var uri = $('.share-this').attr('rev');

    e.preventDefault();
    //console.log('clicked');

    $.ajax({
   url: 'http://www.entendu.info/share',
   type: 'GET',
   dataType: 'html',
   data: {id:contentId, url:uri},
   complete: function(xhr, textStatus) {

   },
   success: function(data, textStatus, xhr) {

   $('#'+contentId).html(data);
   },
   error: function(xhr, textStatus, errorThrown) {

   }
   });

   }
   else {

      // do this on the way back up through the waypoint
   }



   });



});




<div class="content" id="{$posts[i].PID}" style="float:left">
<a href="" class="share-this" rel="{$posts[i].PID}" rev={$posts[i].name|escape:'htmlall'}">

<img src="{$imageurl}/share2.png" width="379" height="22" style="opacity: 0.5; float:left"></a>
</div>
4

1 に答える 1

0

という機能e.preventDefault()ではありませんe。イベントの名前はeventです。コンソールを見ると、「e is not defined」というエラーが表示されます。さらに、ウェイポイント ハンドラー内でデフォルトを防止しても何も起こらないため、とにかくその行のポイントが何なのかわかりません。

于 2012-05-18T11:49:45.350 に答える