問題タブ [event-bubbling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 「ぼかし」に関する締めくくり -- もっと良い方法はありますか?
だから、Facebookのコメントなど、ぼかしでフォームを閉じようとしています。問題は、私が持っていた:
これはうまくいきましたがreturn false
、それを追加することで、実際にライブに行ったときにクリックされたときに送信ボタンがキャンセルされます。
代わりに、これは論理的に機能すると思いました:
しかし、残念ながら、そうではなく、クリックすると、たとえば、実際に、、 ... など.comment_form
をクリックしているため、実際には複数回非表示になっているためだと思います。body
div
div
私の回避策は最終的に
しかし、私はこれが好きかどうか確信が持てず、これが私が尋ねる理由です. これにより、クリックごとにこのクリックイベントが発生します。
誰か提案はありますか?
c# - イベントをバブルするための推奨される方法は何ですか?
ObjectA には ObjectB があり、ObjectB には ObjectC がある 3 つのオブジェクトがあります。ObjectC がイベントを発生させるとき、ObjectA にそれを知らせる必要があるため、これが私が行ったことです...
これはこれを処理する適切な方法ですか、それともより良い方法はありますか? ObjectA に ObjectC についてまったく知られたくありません。イベントを発生させただけです。
c# - Winforms の WPF イベント
ElementHost内でWPFコントロール(重要な場合はAvalon Edit)を使用しているWinformsアプリケーションがあります。
正常に動作しているようですが、このコントロールの KeyPress イベントを Winforms の方法で (RoutedCommands と InputGestures を使用せずに) 処理できるようにしたいので、KeyPreview を設定してフォームの KeyDown イベントを処理することもできましたが、WPF イベントはフォームに泡立たないようです。
基本的に、Winforms の方法で WPF コントロールの KeyDown イベントにアクセスするにはどうすればよいでしょうか?
jquery - jquery - プラグイン バブル クリック イベント
独自の jquery プラグインを作成しようとしていますが、ページへのイベントのバブリングに問題があります (これが問題だと思います)。
私はそのようにプラグインを呼び出しています。
プラグインコード-
だから私がしたいのは、クリックメソッドが起動されたときです。「onClick:onClickCallback」を呼び出しているときに、そのイベントをメインページにバブルしたいので、onClickCallBackがイベントを処理すると思っていました。
誰でも助けることができますか?
前もって感謝します。
jquery - jQuery e.targetバブリングのベストプラクティス?
私のheavy-ajaxコードでは、常にbodyタグを「クリック」してバインドし、に応じて動作$(e.target)
し$.fn.hasClass()
ます。</span>
ただし、内部にタグがあるアンカーをクリックすると、$(e.target)
このノードに等しくなり、必要に応じて親アンカーではなくなります。
これから、私はこのトリックを使用しました(var $t = $(e.target);
):
どういうわけか間違っていると感じます...もっと良い実装はありますか?
$.fn.live()
スパンをターゲットとして返すため、問題は解決しません。さらに、私は速度(アトムベースのタッチデバイスで実行)を探しており、ライブははるかに遅いように見えました(2回):http://jsperf.com/bind-vs-click/3
実際、@ Guffaが指摘したように、を使用$.fn.live()
すると、スパンバブリングの問題が解決されます。これは、もう必要ないためevent.target
です。ここには他に「正しい」答えはないと思います(コンテナでバインドを使用)。
javascript - jQueryでバブリングするイベントを停止するにはどうすればよいですか?
jQueryでカスタムイベントのバブリングを停止するにはどうすればよいですか?
たとえば、私はこのコードを持っています:
バブリング時に最初に見つかった要素でこれを1回だけトリガーできるようにするにはどうすればよいですか?返品を追加できますfalse
か?
javascript - イベントのバブリングとキャプチャとは何ですか?
イベントバブリングとキャプチャの違いは何ですか?いつバブリングとキャプチャを使用する必要がありますか?
android - Android - 2 つの onClick リスナーと 1 つのボタン
クリック可能なカスタム TextView があります。クリックに基づいて外観を変更するために、独自の onClick ハンドラーを定義します。ただし、クリックされたボタンに基づいて何かを行うために、アクティビティで 2 番目の onClick ハンドラーを定義すると、onClick 関数の 1 つだけが呼び出されます。onClick は void 関数です。このクリックを処理しなかったと言う方法はありますか? 他の onClick ハンドラに渡してください。
より明確にするために、コードは次のとおりです。
TextView を拡張する MyCheckButton の内部には、次のものがあります。
ただし、MyCheckButton をアクティビティに含めます。もちろん、クリックされたときに何かを実行する必要があるため、別の OnClickListener をアタッチします。
setOnClickListener を 2 回呼び出すと、元のリスナーを置き換えているように見えるため、外観を変更する toggle() は呼び出されません。既に onClick ハンドラーを使用して外観を変更している場合、このボタンがクリックされたときにアクティビティで何かを行うにはどうすればよいですか? 両方の OnClickListeners が呼び出されるのを見るだけだと思いました。
android - コントロールがonClickイベントを消費しているため、Androidのルート/バブルイベント
ImageViewとTextViewを含むカスタムビューがあり、カスタムビューにonClickListenerを実装しました。問題は、ImageViewがonClickイベントを消費していることです(ユーザーがどこにいても自分のコントロールをクリックできるようにしたいだけです)。Image / TextViewのonClickも聞くことができましたが、私には汚いようです。
Androidでイベントをバブル/ルーティングする方法はありますか?または、別の良い解決策がありますか?
jquery - イベント バブリングと jQuery
DOM を本文にバブルアップするクリック イベントをキャプチャし、クリック要素のセレクターが何であるかを確認し、それに基づいて関数の呼び出しを選択しようとしています。
このようなもの:
そして、私はこのような(疑似コード)を描いています。私はjQueryを使用しています:
このコンテキストでのイベントのバブリングを完全には理解していないこと、および上記のコードが正しくないことを認識しているため、コミュニティにガイダンスを求めています。