繁体   English   中英

如何以角度收听所有移动事件

[英]How to listen to all mobile events in angular

我正在尝试监听所有移动事件,例如触摸,滑动等。我在文档级别添加了eventListener:

document.addEventListener('tap', trackTouchActivity, false);
document.addEventListener('swipe', trackTouchActivity, false);


function trackTouchActivity(event) {
    // any activity
}

这仅适用于angular应用程序的首页,而不适用于该应用程序的其他页面/控制器。

我也尝试在$ rootScope中添加代码

app.run(function($rootScope){
  document.addEventListener('swipe', trackTouchActivity, false);
  document.addEventListener('tap', trackTouchActivity, false);

  function trackTouchActivity(event) {
     $rootScope.$apply(function(){
        // any activity
        // some variable = true
        });
    }
});

我是新手,可能是我做错了什么。 如何在整个应用程序中实现事件监听功能?

要在组件X上聆听touch(开始):

@Component({
host: {
'(document:touchstart)': 'onClick($event)',
 },
})

class SomeComponent() {
constructor(private _eref: ElementRef) { }


onClick(event) {
if (!this._eref.nativeElement.contains(event.target)) 
 doSomething();
  }
}

对于其他建议使用NgTouch的事件,您可以使用此软件包收听其他任何移动行为。

祝好运!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM