元素按Jquery滚动移动
Element move by Jquery scroll
我遇到了通过滚动事件移动元素位置的问题。问题是:我正在向上滚动页面,并将1px附加到css顶部值(每次滚动)。在这之后,我将页面向下滚动,并从css顶部值中删除1px。我认为它会回到原来的位置,但不会。这是我的代码:
var lastScroll = $(window).scrollTop();
$(window).scroll(function(env) {
var scroll = $(this).scrollTop();
if (scroll > lastScroll){
console.log('Scroll down');
$('#home>article').css({
top: "+="+1+"px"
});
} else {
console.log('Scroll up');
$('#home>article').css({
top: "-="+1+"px"
});
lastScroll = scroll;
});
谢谢你的想法!
希望这可能会有所帮助,这是我不久前使用的东西。我一直在使用的:
<script type="text/javascript">// <![CDATA[
$(window).scroll(function () {
var ttop = $('.container').position().top;
var hcltb = $('.container').height();
var mtop = $(window).scrollTop();
if (mtop > ttop) {
if (mtop < (ttop + hcltb - 400)) {
$('.internal_prev').css('top', (mtop - ttop + 300));
$('.internal_next').css('top', (mtop - ttop + 300));
$('.internal_commands').css('top', (mtop - ttop + 300));
}
}
});
// ]]></script>
这将导致div class="container"充当主容器。然后,它将导致internal_*类在div内上下滚动,并设置内部填充400。
它并不完美,但给你。
当滚动事件触发时,不能保证每个滚动像素触发一次。它可能会在你一次滚动10个像素,下一次滚动2个像素后触发。您必须跟踪从上次调用处理程序开始的scrollTop delta(更改)。
相关文章:
- css停止图像在滚动中移动
- 背景图像顶部的滚动图像不移动
- javascript移动交叉浏览器确定用户是否滚动到页面底部
- 动态添加/创建的移动滚动条无法正常工作
- 如何设置移动滚动的最大值日期
- Facebook找到了一种解决移动滚动的方法
- Kendo UI移动滚动程序错误
- 移动滚动无法使用fullpage.js和wow.js
- 溢出时移动滚动方向检测:隐藏页面
- 元素如果在mcustomscrollbar中拖动,则不会向下移动滚动条
- jquery scrollTop工作,但不移动滚动条
- Jquery-在特定时间后自动移动滚动条到特定位置
- jQuery移动滚动/页面切断问题的多页模板
- 移动滚动条时,始终将窗口保持在中心位置
- 不能在iframe内移动滚动条
- 扩展预览关闭移动滚动
- Jquery移动滚动到底部的新页面
- 移动滚动日期选择器被jQuery移动模式隐藏
- 用鼠标移动滚动
- 剑道UI下拉列表移动滚动