iOS7上的“touchmove”,防止固定元素消极?

时间:2013-10-11 15:05:17

标签: javascript jquery ios scroll touch

我有一排固定的指示器(滑块指示器),当它到达底部时,它应该位于页脚的顶部。在桌面上一切正常,我知道在iOS上滚动会冻结DOM操作。

所以我尝试使用on('touchmove')事件,它做得不错,但是当用户在iOS上向上滚动页面时,向上移动网站(并显示空白/灰色/背景),修复元素随之移动。

我试图禁用此功能,并且通常可以关闭触摸事件('touch'),但是如何再次重新绑定它,以便DOM操作在用户滚动时起作用?

这就是我的代码:

$(window).on('touchmove',moveIndicators);
$(window).scroll(moveIndicators);

function moveIndicators() {
var d = $(document).height(),                   
    w = $(window).height(),                     
    s = $(this).scrollTop(),                    
    bottomBound = (navigator.userAgent.match(/(iPhone);.*CPU.*OS 7_\d/i)) ? 119 : 50; 
    $location = $('.location-nav');            

  if(d - (w + s) <= bottomBound) {
      $location.css({ bottom: bottomBound - (d - (w + s)), 'margin-bottom': '0px' });
  } else {
      $location.css({ bottom: 0, 'margin-bottom': '0px' });
  }
}

0 个答案:

没有答案