好吧,所以当我向上/向下滚动时,我正在向左/向右滚动div。它有效,但它都是跳跃的,看起来很难看。我不能将它用于网站,所以有人可以告诉我如何解决跳跃问题吗?另外,请不要告诉我使用插件。
var numScroll = 0;
$(document).ready(function() {
$(window).scroll(function(event){
numScroll = $(window).scrollTop();
$("#main").css("top", numScroll + "px");
$("#main").css("left", -numScroll + "px");
});
});
答案 0 :(得分:0)
我猜测scroll
事件正在触发批次,使浏览器在滚动时流失。
我们为什么不告诉你使用插件?重复别人的工作有什么意义?正如它会发生的那样,jQuery throttle/debounce plugin应该可以很好地解决这个问题:
var numScroll = 0;
$(document).ready(function() {
var $window = $(window);
var $main = $("#main");
$window.scroll($.throttle(50, function(event){
numScroll = $window.scrollTop();
$main.css({top: numScroll + "px", left: -numScroll + "px"});
});
}));
请注意选择器缓存以获得更好的性能 - 浏览器对scroll
事件所做的工作越少,“跳跃”事件就越少。