这适用于 iOS6,但不幸的是不适用于 iOS7:http: //jsbin.com/wayurebu/1
该代码适用于固定页眉,但不适用于固定页脚。更改 documentElement.className 和将固定定位元素切换为可见的组合强制渲染引擎重新计算固定视口,并重新定位所有固定元素。
需要 500 毫秒计时器,因为有时在触摸滚动时,滚动事件似乎无法触发。
<style>
#fix1, #fix2 { display: none; position: fixed; top: 0; left: 0; height: 1px; width: 1px; z-index: 2;}
.head1 #fix1, .head2 #fix2 { display: block; }
</style>
<div id=fix1></div>
<div id=fix2></div>
<script>
var toggleTimer;
var headerToggle = 0;
$(window).on('scroll', function() {
function toggle() {
var toggleit = !(headerToggle++ % 2);
$(document.documentElement).toggleClass('head1', toggleit);
$(document.documentElement).toggleClass('head2', !toggleit);
}
toggle();
clearTimeout(toggleTimer);
toggleTimer = setTimeout(toggle, 500);
});
</script>