如何从 IOS Safari 中的 touchmove 事件检测滚动画布

尼拉吉·拉索德

我试图从 touchmove 事件中检测滚动画布,它在 safari 浏览器之外的所有浏览器上都能正常工作,在 safari pageY 中,touchmove 事件的 screenY 坐标无法正常工作。当我触摸并向下移动时,坐标 (pageY,screenY) 值会波动,这意味着它会像 468,473,470,480,477,486,481 一样,它应该是一致的,增加或减少,以便我可以检测滚动顶部或向下滚动。请帮帮我。

$scope.touchStart = function(e){
            var touchevent = e.originalEvent.changedTouches[0];
            tempMove = touchevent.screenY;
}

$scope.touchMove = function(e) {
            var touchevent = e.originalEvent.changedTouches[0];
            var currentY = touchevent.screenY;
            if(tempMove == 0){
                tempMove = currentY;
            }else{
                var dist = tempMove - currentY;
                window.parent.postMessage(dist,'*');
                tempMove = currentY;
            }
        };
尼拉吉·拉索德

我有一个 css hack 来解决这个问题。我在 touchmove 事件上向画布添加了一个叠加层,然后它可以轻松滚动。

HTML

     <div id="overlay" ng-show="doubleTapEvent"> <!--  overlay for scroll -->
      <div id="text" > <span class="font-size-15-all" >Scroll up or down</span><br>
        <button class="btn btn_scroll prime_col_white font-size-15-all openSansSemiBold" ng-click="scroll_Off()">
            <span>Back to Label Maker</span>
        </button>
      </div>
    </div><!--  end overlay for scroll -->
   <div class="col-xs-12 col-sm-12 col-md-12  no-padding main_canvas_wrapper" ng-touchmove="touchMove($event)">
     <canvas id="canvasArea" width="400" height="400"></canvas>  
   </div>

控制器

        $scope.touchMove = function(e) {
            e.preventDefault();
            var tObj = canvas.getActiveObject();
            if(!tObj){
                $scope.doubleTapEvent = true;
            }
        };
        $scope.scroll_Off = function(){
            $scope.doubleTapEvent = false;
        }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

“ touchmove”事件在Mobile Safari上不会触发?

来自分类Dev

“ touchmove”事件在Mobile Safari上不会触发?

来自分类Dev

如何在JavaScript中强制停止touchmove?

来自分类Dev

在SVG元素中检测圆上的touchmove

来自分类Dev

如何在Safari iOS中缩放HTML5画布中的表情符号?

来自分类Dev

Safari iOS中的视差滚动跳动

来自分类Dev

如何在iOS 7中从WebApp打开Safari

来自分类Dev

从dom中删除任何元素后,Touchmove事件停止触发

来自分类Dev

CSS动画并非总是在iOS 8 Safari中启动

来自分类Dev

如何在Safari中使用iOS9中的JavaScript重定向到Safari中的ios设置

来自分类Dev

键入事件时iOS Safari中的e.keyCode

来自分类Dev

滚动元素上的Javascript touchmove事件

来自分类Dev

如何在iOS的Safari中仅加载WebView中的.html页面和在Safari中加载所有www页面?

来自分类Dev

如何在iOS的子ViewController中检测触摸事件

来自分类Dev

如何修复在Safari中不起作用的SVG动画

来自分类Dev

ios App:如何打开facebook链接并确保它在safari中打开,而不是在本机应用中打开?

来自分类Dev

如何在JavaScript中获取数据属性-在iOS Safari浏览器中不起作用

来自分类Dev

如何在JavaScript中获取数据属性-在iOS Safari浏览器中不起作用

来自分类Dev

如何使用Vuejs在Safari中侦听表单上的粘贴事件

来自分类Dev

Hammer.js阻止iOS Safari上的滚动事件

来自分类Dev

如何防止默认浏览器滚动与节流功能结合的touchmove

来自分类Dev

如何在angularjs中检测水平滚动事件?

来自分类Dev

如何在iOS设备上的Safari浏览器中测量网页加载时间

来自分类Dev

从Safari重定向到IOS中的视图控制器后,如何调用viewWillAppear

来自分类Dev

如何在iOS(Safari)中获取mailto链接以打开Outlook应用程序?

来自分类Dev

从Safari重定向到IOS中的视图控制器后如何调用viewWillAppear

来自分类Dev

如何为 iOS 创建 safari 扩展?

来自分类Dev

iOS7 Safari中的全屏模式

来自分类Dev

$_COOKIE 在 Safari iOS 中不起作用

Related 相关文章

  1. 1

    “ touchmove”事件在Mobile Safari上不会触发?

  2. 2

    “ touchmove”事件在Mobile Safari上不会触发?

  3. 3

    如何在JavaScript中强制停止touchmove?

  4. 4

    在SVG元素中检测圆上的touchmove

  5. 5

    如何在Safari iOS中缩放HTML5画布中的表情符号?

  6. 6

    Safari iOS中的视差滚动跳动

  7. 7

    如何在iOS 7中从WebApp打开Safari

  8. 8

    从dom中删除任何元素后,Touchmove事件停止触发

  9. 9

    CSS动画并非总是在iOS 8 Safari中启动

  10. 10

    如何在Safari中使用iOS9中的JavaScript重定向到Safari中的ios设置

  11. 11

    键入事件时iOS Safari中的e.keyCode

  12. 12

    滚动元素上的Javascript touchmove事件

  13. 13

    如何在iOS的Safari中仅加载WebView中的.html页面和在Safari中加载所有www页面?

  14. 14

    如何在iOS的子ViewController中检测触摸事件

  15. 15

    如何修复在Safari中不起作用的SVG动画

  16. 16

    ios App:如何打开facebook链接并确保它在safari中打开,而不是在本机应用中打开?

  17. 17

    如何在JavaScript中获取数据属性-在iOS Safari浏览器中不起作用

  18. 18

    如何在JavaScript中获取数据属性-在iOS Safari浏览器中不起作用

  19. 19

    如何使用Vuejs在Safari中侦听表单上的粘贴事件

  20. 20

    Hammer.js阻止iOS Safari上的滚动事件

  21. 21

    如何防止默认浏览器滚动与节流功能结合的touchmove

  22. 22

    如何在angularjs中检测水平滚动事件?

  23. 23

    如何在iOS设备上的Safari浏览器中测量网页加载时间

  24. 24

    从Safari重定向到IOS中的视图控制器后,如何调用viewWillAppear

  25. 25

    如何在iOS(Safari)中获取mailto链接以打开Outlook应用程序?

  26. 26

    从Safari重定向到IOS中的视图控制器后如何调用viewWillAppear

  27. 27

    如何为 iOS 创建 safari 扩展?

  28. 28

    iOS7 Safari中的全屏模式

  29. 29

    $_COOKIE 在 Safari iOS 中不起作用

热门标签

归档