在iphone safari的javascript中获取视口位置

时间:2009-06-16 18:22:19

标签: javascript iphone css safari webkit

我正试图阻止元素在iphone上的safari中滚动。我试过这里提到的解决方案: iPhone Safari: Scroll a list inside a html container 但是我的名单很大,而且工作不顺利。

我想到的是检测onscroll事件并重新定位元素,因此它位于视口的边界。

但我找不到检测视口坐标的方法。任何人都可以帮忙吗?

感谢。

3 个答案:

答案 0 :(得分:0)

document.addEventListener(
    'touchmove',
    function touchMove(event) {
        event.preventDefault()
    },
    false
);

答案 1 :(得分:0)

看看iScroll。如果不能做你想做的事,可以使用实现作为参考。我认为这样做可以同时执行event.preventDefault()event.stopPropagation()以防止移动版Safari对触摸事件做出响应。

  

iScroll的诞生是因为   mobile webkit(在iPhone,iPod上,   Android和Pre)没有提供   本地方式滚动内容   固定宽度/高度元素。这个   不幸的情况阻止任何   web-app有一个位置:绝对   页眉和/或页脚和滚动   内容的中心区域。

答案 2 :(得分:0)

var viewport_x = window.pageXOffset;
var viewport_y = window.pageYOffset;