【发布时间】:2015-02-23 05:20:53
【问题描述】:
大家好,
我遇到了一些问题,我知道我以前做过这个,但对于我的一生,我似乎无法弄清楚我是如何做到的。
我有一个使用 3 列的网站。
左、内容和右。
我希望在滚动期间保持在屏幕上的左右列。我已经使用 Jquery 和 CSS 固定定位完成了这项工作。
.fixed {
position:fixed;
top:0px;
}
.paddingTop{
padding-top:110px;
}
和
<script type="text/javascript">
$(window).scroll(function () {
t = $('#contentliquid').offset();
t = t.top;
s = $(window).scrollTop();
d = t - s;
if (d < 0) {
$('#leftcolumnwrap').addClass('fixed');
$('#leftcolumnwrap').addClass('paddingTop');
} else {
$('#leftcolumnwrap').removeClass('fixed');
$('#leftcolumnwrap').removeClass('paddingTop');
}
});
</script>
问题是每个对象都设置为浮动。将其设置为浮动的原因是因为网站必须可针对多种环境和大小进行调整,并且使用精确的像素值设置上/右/左/下会消除缩放网站的能力。
所以我的问题是这样的:
如何在使用浮动时保持左右列的位置。
编辑:
既然每个人都在要求它,这里有一个 jsfiddle。它只会显示无用的数据并让您了解滚动问题。
【问题讨论】:
-
在jsfiddle.net上分享您的代码以交互式方式运行您的代码..
-
我希望你们都意识到问题不在于 jquery...在 jsfiddle 上发布此内容将无济于事,因为 jsfiddle 无法处理与此站点关联的 asp.net 代码。跨度>
-
您能多解释一下,或者您是否有任何视觉或示例要展示。
-
@PRAH 这很简单。 3 列,2 列在设置 FIX 时移动到屏幕左侧并相互堆叠,在从 CSS 中删除 FIX 后移回正确位置。我需要它无限期地保持在确切的位置,但它不能使用设置的像素值,因为它需要缩放。