0

我正在运行 Paul irish 的无限滚动插件,并且我还有一个脚本,当我将鼠标悬停在它们上时,它会在我的个人帖子上显示一个下拉 div,但是,在无限滚动加载第一组帖子后,下拉菜单会变得混乱。

我的下拉代码如下所示:

<script type="text/javascript">
    $(function() {
        $('.entry').hover(function() { 
            $(this).find('.notes').slideToggle(125); 
        });
    });        
</script>

我知道我必须在无限滚动加载后调用它,所以我将它添加到我的无限滚动插件中,如下所示:

    <script type="text/javascript">
        $(document).ready(function(){
            $('#content').infinitescroll({ 
                navSelector : "div.navigation",
                nextSelector : ".navigation a#next",
                itemSelector : ".entry", 
                bufferPx : 50,
                animate  : 'true',
                extraScrollPx: 150,    
                loading: {
                    finished: undefined,
                    finishedMsg: "Congratulations, you've reached the end of the internet.",
                    img: "http://static.tumblr.com/8je4mhi/aLbmpfjp5/1.gif",
                    msg: null,
                    msgText: "",
                    selector: null,
                    speed: 'slow',
                    start: undefined
                },
            },function(newElements){                    
                  $('.entry').hover(function() { 
                      $(this).find('.notes').slideToggle(125); 
                   });
            });
        });
    </script>

但这搞砸了。它使第一组帖子默认可见,并在悬停时隐藏,之后的下一组帖子被隐藏,但在切换时不会保持显示。

如果有帮助,我在这里有我的示例网站:http: //test-theme-one.tumblr.com

如果有帮助,还有我的完整 html 标记:http: //pastebin.com/c1N37r6U

也许有人可以指出我哪里出错了?

4

1 回答 1

0

你会想要利用 jQuery 的on()功能。

只需将您的初始代码更改为:

$('#content').on('hover', '.entry', function () {
  $(this).find('.notes').slideToggle(125);
});

...并删除无限滚动回调中的悬停功能。

更多信息可以在这里找到:http: //api.jquery.com/on/

于 2013-07-04T23:39:07.537 回答