簡體   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