水平无限卷轴

时间:2012-10-09 13:08:05

标签: jquery horizontal-scrolling infinite-scroll

我有一个水平的图像列表,我很乐意在div中应用无限滚动。理想情况下,这只是窗口本身,但现在它是一个div。

我认为这涉及保罗爱尔兰无限滚动的一些黑客攻击(?)我知道我现在可以在1.2中将localMode设置为true以使其在div内部工作,但我也知道(认为)我需要欺骗浏览器从“下一页”中思考内容。我无法弄清楚如何做到这一点。我搜索和搜索过,现在我很想为你们天才提供你们精彩的想法。谢谢!

2 个答案:

答案 0 :(得分:3)

如果您希望元素水平排列,则需要一个提供width属性的容器。为了实现这种动态,只需添加以下内容:

$(document).ready(function(){
  var totalWidth = 0;
  $('#container').children().each(function(){
    totalWidth += $(this).outerWidth();
  });
  $('#container').css('width', totalWidth);
});

如果您直接在body下使用该容器,并将body一个overflow:scroll。然后给容器,bodyhtml高度100%,这应该水平排列。

答案 1 :(得分:1)

Lazyload正是我想要的。 http://www.appelsiini.net/projects/lazyload。 我在一个名为#image_list的容器中有一个图像列表。

$(document).ready(function () {
    $("#image_list img").lazyload({
          effect : "fadeIn"

      });
});

这很明显是不言自明的。然后我没有做出最好解释的水平无限列表包含在这个div中:

#image_list {
 margin: 0 auto;
 white-space: nowrap;
 width: auto;
 overflow: auto;
 clear: both;
 position: relative;
}

它实际上不是一个列表,因为firefox拒绝不包装它!所以这是一个带有无限td的表格行:

<table>
 <tbody>
  <tr>
   <td><img src="img1.jpg" /></td>
   <td><img src="img2.jpg" /></td>
        ...
   <td><img src="img34.jpg" /></td>
  </tr>
 </tbody>
</table>