【问题标题】:Tap/click Marker events not working in angular-leaflet-directive on mobile devices点击/单击标记事件在移动设备上的角度传单指令中不起作用
【发布时间】:2016-07-27 16:28:07
【问题描述】:



当我在移动设备(Google Nexus 5 + Chrome)上试用时,我遇到了点击/点击标记事件处理的问题。
我在我的 AngularJS 应用程序中内置了带有 angular-leaflet-directive 的地图。这张地图上有一些标记。当用户单击/点击标记时 - 我希望打开一些带有额外信息的弹出窗口。

当我从笔记本电脑上尝试时,它非常完美。如果我记录标记事件,我会看到以下内容:

所以所有的点击都在那里,并且弹出窗口正确打开。
当我尝试在我的 Nexus 手机上进行调试时,我根本没有点击。同时由于某种原因双击工作正常。日志如下所示:

现在的问题是:到底是什么? :) 我将非常感谢任何建议。 我正在尝试一些解决方案(即https://github.com/tombatossals/angular-leaflet-directive/issues/743),但它们似乎不起作用。而且我想双击可以正常工作的事实很可能意味着,简单的点击应该也可以正常工作,而无需额外的 touchend 技巧等(如果我错了,请纠正我)。

【问题讨论】:

    标签: javascript angularjs leaflet angular-leaflet-directive


    【解决方案1】:

    所以我找到了原因,它不在 Leaflet 或 angular-leaflet-directive 中。
    我使用的是 Angular Material 框架,它劫持了我的触摸。

    这里描述了类似的问题:
    https://github.com/angular/material/issues/1441
    并且还提出的解决方案是禁用这种劫持:

    app = angular.module('MyApp', ['ngMaterial'])
        .config(function( $mdGestureProvider ) {
            $mdGestureProvider.skipClickHijack();
    });
    

    我相信这可能对某些人有用。

    【讨论】:

      猜你喜欢
      • 2016-11-14
      • 2015-11-22
      • 2015-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-12
      相关资源
      最近更新 更多