【发布时间】:2015-10-15 08:45:44
【问题描述】:
嘿,我有一个非常烦人的问题,它可能有一个简单的解决方案,但我终其一生都无法解决它。
基本上我有两个图像都是 50% 的容器现在目标是两个图像根据滚动位置滑入(左/右),一旦它到达容器的顶部,两个图像都会坐是地方。
现在我已经做到了这一点,唯一的问题是当我调整页面大小时,两个图像的位置都是错误的。我显然做了一个与 scroll() 函数具有相同逻辑的 resize() 函数,但我仍然一无所获。这是我的代码
var page_width = $(document).outerWidth(),
page_height = $(document).outerHeight(),
left_image = $('.split-screen.youth'),
right_image = $('.split-screen.elite'),
offset = (page_width) / page_height;
left_image.css({'left':'0px'});
right_image.css({'right':'0px'});
$(window).on('scroll', null, function(){
var scrollTop = $(window).scrollTop(),
calc = -(scrollTop*offset);
left_image.css({
'margin-left': 'calc(100% + '+calc+'px)'
});
right_image.css({
'margin-right': 'calc(100% + '+calc+'px)'
});
});
$(window).resize(function(){
// something ???
});
这里是这个问题的 jsFiddle,虽然它看起来并不完全准确,但你明白了。当您调整滚动位置的大小时,我需要margin-left/margin-right 值是正确的。
【问题讨论】:
-
我们需要更多信息来准确确定问题所在以及您要显示的内容。您能否提供一些问题的屏幕截图和您想要实现的目标的模型?也许 JSFiddle 会有所帮助。
-
好吧,如果我在 Chrome 中调整 jsfiddle 的大小,则浏览器会正确调整图像的大小。也许您正在使用特定的浏览器?
-
再试一次,我错误地重新加载到演示中
-
嗯,它们是重叠的,也许是你的问题?好的,我看到你正在重新加载它:)
标签: javascript jquery html css scroll