我有保罗爱尔兰的无限滚动插件运行,我还有一个脚本,当我悬停在他们的个人帖子上时会显示一个下拉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
也许有人可以指出我哪里出错了?
答案 0 :(得分:0)
您需要使用jQuery的on()
函数。
只需将初始代码更改为:
$('#content').on('hover', '.entry', function () {
$(this).find('.notes').slideToggle(125);
});
...并删除无限滚动回调中的悬停功能。
可在此处找到更多信息:http://api.jquery.com/on/