3

touchStart両方のタッチスクリーンで要素をクリックできるようにし、イベントとを介してクリックできるようにしようとしていますclick

これらのイベントの両方を1つのEmberビューに接続するにはどうすればよいですか?

私が試してみました:

{{action "itsClicked" on="click touchMove"}}

{{action "itsClicked" on="click, touchMove"}}

{{action "itsClicked" on="click"}} {{action "itsClicked" on="touchMove"}}

4

2 に答える 2

6

これは現在サポートされていません。ただし、これには未解決の問題があります。GitHub課題追跡システムの#569を参照してください。コメントを追加する必要があります。

GitHubの問題から提案された解決策は、次のようなカスタムビューを使用することです。

Ember.View.extend({
    click: function(evt) {
        this.fire('itsClicked', evt);
    },
    touchMove: function() {
        this.fire('itsClicked', evt);
    },
    itsClicked: function(e) {
        ...
    }
})
于 2012-05-17T15:03:41.357 に答える
0

複数のアクションはサポートされていません。これにより、コンポーネント(またはビュー)を作成してコードを分離する必要があります。

ただし、カスタムイベントを作成することで、アプリケーションのクリック/タッチの問題を簡単に解決できます。

App = Ember.Application.create({
    customEvents: {touchend: "click"}
});

これは、タッチするとすべての「クリック」イベントが発生することを意味します

于 2014-06-17T18:48:29.923 に答える