【问题标题】:Hammerjs in Safari : scroll issueSafari 中的 Hammerjs:滚动问题
【发布时间】:2018-08-13 04:23:13
【问题描述】:

我想允许水平滑动事件并保持垂直滚动。 所以用这个:

touch-action: pan-y !important;

但 Safari 不支持“触摸动作”。 HammerJS preventDefaults 无法检测到“touch-action: pan-y” css,因此它阻止了滚动。

因此,滑动效果很好,但无法滚动 Safari。滑动和滚动都可以在其他支持“触摸动作”的浏览器上工作。

我正在使用 angular2。

<div (swipeleft)="swipe($event)" (swiperight)="swipe($event)">

请帮忙!有没有我遗漏的配置。

【问题讨论】:

  • 我也遇到了这个问题..真可惜! :\

标签: angularjs safari mobile-safari hammer.js


【解决方案1】:

我找到了解决办法

1) 将此添加到 app.module.ts

export class BaluHammerConfig extends HammerGestureConfig {
    overrides = {
        pan: {
             direction: 6
      },
      pinch: {
          enable: false
      },
      rotate: {
          enable: false
      }
  };
}

2) 不要将 HammerGestureConfig 添加到您的提供程序,而是使用以下命令:

{
    provide: HAMMER_GESTURE_CONFIG,
    useClass: BaluHammerConfig
},

【讨论】:

  • 不确定您是否在 safari 中验证了这一点,但它不起作用。
  • 没关系,它确实有效,我的浏览器没有接受更改
猜你喜欢
  • 2019-04-27
  • 1970-01-01
  • 2016-06-01
  • 2015-01-22
  • 1970-01-01
  • 2017-12-20
  • 1970-01-01
  • 2012-06-30
  • 2013-05-12
相关资源
最近更新 更多