Vue: イベントのディスパッチが正しい順序で実行されていませんか?

作成日 2016年07月29日  ·  3コメント  ·  ソース: vuejs/vue

Vue.jsバージョン

1.0.26

複製リンク

http://codepen.io/anon/pen/akjNbW

再現する手順

  1. 入力をクリックします
  2. ボタンをクリックしてみてください

    何が期待されますか?

クリックイベントが発生し、次にぼかしが続行されます。

実際に何が起こっているのですか?

ブラーイベントが呼び出され、クリックイベントが破棄されます。


これがVueに関連しているのか、ブラウザがイベントの委任をどのように処理しているのか、私にはよくわかりません。 これをFirefox、Chrome、IE、Edgeでテストしましたが、すべて同じように動作しました。

手がかりをいただければ幸いです。
前もって感謝します。

最も参考になるコメント

これはブラウザの標準的な動作です。 代わりに、 mousedownイベントをリッスンすることをお勧めします。

適切な方法は、より複雑なロジックを使用することです。

  • 入力がぼやけた後、ボタンが消えるまでしばらく待ちます。
  • ボタン自体にフォーカスがある場合は、ボタンを強制的に表示します。

全てのコメント3件

これは興味深い質問です。
クリック関連のキーダウンは、クリックイベントが発生する前であっても、入力のぼかしをトリガーすると思います。

トリッキー。

これはブラウザの標準的な動作です。 代わりに、 mousedownイベントをリッスンすることをお勧めします。

適切な方法は、より複雑なロジックを使用することです。

  • 入力がぼやけた後、ボタンが消えるまでしばらく待ちます。
  • ボタン自体にフォーカスがある場合は、ボタンを強制的に表示します。

mousedownイベントで十分だと思います、 @ simplesmilerありがとうございます!

このページは役に立ちましたか?
0 / 5 - 0 評価