0

我使用插件航点(http://imakewebthings.com/jquery-waypoints/

*编辑:工作解决方案:http: //pastebin.com/x95Qf7m8 *

我要做的是在“share-this”标签向下滚动时加载链接中包含的共享小部件。

你可能会注意到 head.ready 的使用,它只是 document.ready 的替代品,因为我使用 headjs 加载我的外部脚本。

我的问题很简单,为什么点击触发时它可以工作,但不使用航点插件?欢迎任何帮助

我的网站: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 未定义”。另外,防止航点处理程序中的默认值没有任何作用,所以我不确定那条线的意义是什么。

于 2012-05-18T11:49:45.350 回答