問題タブ [event-propagation]
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 - 冗談めかした伝播
私は jeditable を使用しており、ネストされた要素はすべて jeditable にバインドされています。問題は、ネストされた要素をクリックすると、一番上の親でクリックイベントがトリガーされることです。どうすればこれを回避できますか?
[編集]
HTMLコードは次のとおりです。
ありがとう!
jquery - jQuery オートコンプリート アイテムのクリックとイベント バブリング
リンクをクリックして選択をトリガーするにはどうすればよいですか?
編集: $("a:contains('item2')").click(); の行が $("a:contains('item2')").click(); オートコンプリート メニューの選択をトリガーしますか?
jquery - jQueryでのバインド解除/バインドとデリゲート:どちらが最適なソリューションですか?
ページに動的に追加される要素へのバインド解除およびバインドイベントハンドラーを処理するjQueryコードがあります。このコードには、指定されたIDプレフィックスを持つ要素から既存のハンドラーをバインド解除し、イベントハンドラーをバインドして、既存の要素にハンドラーがあり、同じIDプレフィックスの新しく追加された要素にもハンドラーが含まれるようにするラッパー関数があります。明らかに、これは、新しい要素が追加されたときにすでに存在するidプレフィックスを持つ要素に対して追加のバインド解除/バインドを行います。バインド解除は、既存の要素に同じタイプの複数のハンドラーが割り当てられるのを防ぐために行われます。
このコードを最初に書いたときから、私はjQueryデリゲート関数について学びました。これは、essentialが上記で行ったことを正確に実行しているようです。
デリゲート関数は、現在の作業コードを書き直してそれを利用する価値があるように、私が行ったことを大幅に改善しますか?より良いとは、パフォーマンス、メモリ使用量、またはその他の測定値を意味します。
actionscript-3 - イベントバブリング、および伝播の停止
event.bubbles
イベントのtofalse
と、イベントの設定event.stopPropagation()
または処理中の違いは何 stopImmediatePropagation()
ですか?
AS3でFlex4を使用しています。
javascript - キャンセル後にイベントの伝播を続行するには?
ユーザーが特定のリンクをクリックすると、確認ダイアログが表示されます。「はい」をクリックすると、元のナビゲーションを続行したいと思います。キャッチ 1 つ: 私の確認ダイアログは、ユーザーが [はい] ボタンをクリックした場合にのみ解決される jQuery.Deferred オブジェクトを返すことによって実装されます。したがって、基本的に確認ダイアログは非同期です。
だから基本的に私はこのようなものが欲しい:
もちろん、フラグを設定してクリックを再トリガーすることもできますが、それは面倒です。これを行う自然な方法はありますか?
javascript - event.stopPropagation()がjQuery 1.7のクロムで機能しない
何らかの理由で、ドキュメントをクリックしても Chrome で機能しません (closeQuickView が呼び出されていません)。
要素は AJAX 経由で読み込まれるため、.on() アクションが必要です (以前は .live() でしたが、現在はjQuery 1.7で廃止されています) 。
ここに示す例を使用しました:要素の外側のクリックを検出するにはどうすればよいですか? 基礎として
私のマークアップは次のとおりです。
jquery - jquery - 不要な伝搬効果
いくつかのコンテンツを追加するクラスにライブリスナーがあります。これはどういうわけかこのリスナーを繰り返し呼び出しています。この場合、伝播をオフにするにはどうすればよいですか?
jquery - イベントが DOM をバブリングしないようにする
コンテナー ドキュメントで発生するイベント ハンドラーがあり、それを内部の li-Element に伝達します。なんらかの理由で、Return キーを押すと、DOM ツリーの少し上にあるリンクに対してもイベントが発生します。イベントが DOM をバブリングするのを止めることができませんでした。その理由はわかりません。誰でも助けることができますか?ありがとう。
私はjQuery 1.7を使用していますが、残念ながら、その複雑さのために意味のあるライブコード例を提供することはできません... :-(
私のHTMLは次のようなものです:
私のJavascriptの一部は次のようになります。
と
何が起こるかは次のとおりです。
#contentBoxのコンテンツはajax を使用して動的に読み込まれます。そこには要素のリストがあり、動的に展開できます。新しい要素を追加するたびに、フィールドセット内のすべてのタグのセットが追加されています。横にあるリンクclass="del"を使用して要素を削除できます。ユーザーが入力ボックスに入力すると、その下にライブ検索ボックスが表示されるので、そこからエントリを引き継ぐことができます。これは、下向き矢印を押して検索結果を確認し、Returnキーを押して結果を引き継ぐことによっても実行できます。
上記のイベント内で、押されたreturnをチェックし、実際にタイトルのリストからタイトルを取得して HTML 入力フィールドに入力します。グーグルライブ検索のように。
問題:リターンを押して結果セットを引き継ぐと、上記のイベントが削除リンクのクリック イベント ハンドラに対しても発生します。
e.stopPropagation、e.stopImmediatePropagation、e.preventDefault()などを組み合わせても伝播を停止できませんでした。
delete-link event-handler 内の event-target をチェックすると、エントリの削除が停止することがわかりました。しかし、イベントがa -click イベントに到達しないことを望みます。
%-/
何か案は?
javascript - Mozilla Firefox で TAB キーを無効にする方法は?
tabHTML フォームでキーを無効にしたい。を無効にする次の JavaScript コードを見つけましtabたが、Firefox では機能しません (Chrome と IE で機能します)。
これは私のHTMLフォームです: