以下脚本成功添加或删除了"修复"类到桌面浏览器中的元素(#sideBarWrapper
),具体取决于用户滚动的距离。
(function (exocet, $, undefined) {
// Distance of sidebar from document top
function sideBarTop () {
return $eventSideBar.offset().top;
}
// Distance user has scrolled
function scrollDist () {
return $(window).scrollTop();
}
// Toggle sidebar class
function sideBarStick(sbt) {
if (sbt-30 < scrollDist()) {
$sideBarWrapper.addClass('fix');
} else{
$sideBarWrapper.removeClass('fix');
}
}
// Scroll events
function scroll() {
$eventSideBar = $('#eventSideBar');
$sideBarWrapper = $('#sideBarWrapper');
var sbt = sideBarTop();
return $(window).scroll(function () {
sideBarStick(sbt);
});
}
exocet.init = function () {
scroll();
};
}(window.exocet = window.exocet || {}, jQuery));
像这样调用:
$(function() {
exocet.init();
});
问题是,在Safari for iPad中,在文档停止运行之前,类似乎不会被添加,通常在侧边栏滚动出视图之后很久。我怎么能补偿这个?