0

基本上我有几个绝对位置的 div,这些只是点击打开并显示内容的标签。

我也有垂直滚动分页(就像 Facebook 的永久滚动一样)。

现在有了标签,其中一些位于页面下方几千像素的位置,这意味着它们正在拉伸页面,因此在垂直滚动分页开始之前有一个巨大的白色间隙。

我试过了

  • 最初通过 Jquery 隐藏所有 div
  • 将它们包装在 div 中并浮动
  • 不同的 z-index
  • 设置身体高度的变化。

我的目标是强迫浏览器以某种方式忽略它们。

万一这有助于:

对于我正在使用的标签:TabSlideOut - http://www.building58.com/examples/tabSlideOut-muliple.html

对于滚动分页 - http://www.contextllc.com/dev_tools/jQuery/scrollExtend/latest/jquery.scrollExtend.example.html

4

1 回答 1

0

我希望我理解你的问题: 你有一个绝对位置的 div,你需要能够隐藏它们,直到页面上发生事件。

当我不需要简单的 .hide() 时,我发现有用的是“隐藏”视口中的内容。(我用精灵图遇到过这个问题。)

我使用的一种方法是创建一个 CSS 类 .hidden 并使用以下命令调用它:$(selector).addClass('hidden');

.hidden{position: absolute; top: -9999px !important; left: -9999px !important;}

!important 是……嗯,很重要。简单地说,如果一个类有 !important,而另一个没有,那么通常会优先处理。如果您开始使用 JQuery 来传递 CSS 操作,您最终可能会否决 !important。

然后我把这个类分配给<div>我需要的东西。我还创建了一个 --[ jsfiddle ]-- 来演示将内容带入视口的两种方法。

第一个(aTab)使用 .hidden 技术。第二个 (bTab) 使用 .slideToggle() 您可以为下一组要加载的内容实现它,或者与您的 silder 插件结合使用。

希望这可以帮助!

于 2013-01-16T06:42:40.430 回答