2017-03-06 119 views
2

我正在寻找很多论坛和问题,但似乎没有人会问如何双击or Angular/ionic 2中的双击?双击/双击Angular2&ionic

离子V1是可用on-double-tap(见http://ionicframework.com/docs/api/directive/onDoubleTap/

有谁也许有尖头或任何代码捉对离子2/2角双击事件?

也许通过HammerJS?

非常感谢! 路易斯:)

+0

不知道双击..但我觉得你可以考虑[新闻事件](http://ionicframework.com/docs/v2/components /#手势) –

+0

我发现它..相对容易:(dblclick)=“myFunction()”从https://en.wikipedia.org/wiki/DOM_events#Events :) – luiswill

+0

好的..不太确定它会如何在移动设备上有用 –

回答

4

所以1-2个小时,很明显,你并不需要赶上与离子双击事件后,而是纯粹的的JavaScriptdblclick()

所以在角2这将是:(dblclick)="myFunction()"就是这样!

在这里您可以找到JavaScript的其他活动。

+1

这似乎不适用于移动设备(在iOS中测试) – shakirthow

+0

无法在移动iOS上使用 –

0

Ionic 2有基本的手势,可以从HTML访问。 应该可以在iOS和Android上使用。 你可以找到documentation here

它们提供的源代码is here

0

要使用相同的按钮进行简单的单击和双击,setTimeout函数可以提供帮助。它需要与箭头执行=>一起使用。

html template

<button (click)="simpleClickFunction()" (dblclick)="doubleClickFunction()">click me!</button> 

Component

simpleClickFunction(): void{ 
    this.timer = 0; 
    this.preventSimpleClick = false; 
    let delay = 200; 

    this.timer = setTimeout(() => { 
     if(!this.preventSimpleClick){ 
     //whatever you want with simple click go here 
     console.log("simple click"); 
     } 
    }, delay); 

    } 

    doubleClickFunction(): void{ 
    this.preventSimpleClick = true; 
    clearTimeout(this.timer); 
    //whatever you want with double click go here 
    console.log("double click"); 
    }