問題タブ [stoppropagation]

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.

0 投票する
2 に答える
180 参照

firefox - Firefoxがデフォルトのハンドラーをトリガーしない

問題は、伝播の停止を使用してCtrlキーでリンクをクリックしているときに、Firefox(3-10)がデフォルトのリンクハンドラーを呼び出さないのはなぜですか?IE!を含む他のすべてのブラウザは、それを行います。

コードサンプル:

Firefoxを開き、Ctrlキーを押しながらリンクをクリックするだけです。何も起こらない、なぜ?

0 投票する
2 に答える
196 参照

javascript - stopPropagationの操作方法

stopPropagationを持つ要素がありますが、その要素内に、イベントに使用できるようにする必要がある別の要素があります。ただし、これはstopPropagationを持つ要素の子要素であるためです。動いていない。伝播が停止した要素内の要素で伝播を有効にする方法はありますか?ありがとうございました...

0 投票する
5 に答える
16878 参照

jquery - jQuery stopPropagation()?

誰も私に何か指針を与えることができる前に、これに出くわすことはありませんか?

ホワイトボードにメモを投稿するようなメモを作成するための Web アプリを作成しています。現時点では、スポーン ボタンはノートを生成しますが、ユーザーがキャンバス (ホワイトボード) の任意の場所をクリックできるようにしたいと思います。その位置に新しいノートが生成されます。

そのためのコードは次のとおりです。

ユーザーがメモの 1 つをクリックすると問題が発生します。これは、ユーザーがメモをクリックして別のメモを作成するたびに、メモがキャンバスに複製されるためです。この動作を停止し、ユーザーが空白のキャンバス領域をクリックしたときにのみメモを作成したいと考えています。preventDefauly、stopPropagation、stopImmediate を試しましたが、どれも影響を与えていないようです。

ノートクリックなどの他のアクションでも試してみましたが、適切な場所に適切なものを取得できないようです? それとも私はこれを完全に間違った方法で行っていますか?

ここに例:

http://www.kryptonite-dove.com/sandbox/animate

アップデート:

これにより、ノートが泡立つ問題は解決しましたが、ノート クラスでのクリック操作ができなくなりました。私は未知の海域にいます! メモのタイトルとテキストに対してクリックアクションを元に戻す方法についての指針をいただければ幸いです:)

0 投票する
1 に答える
732 参照

jquery - jqueryトグルクリック除外子リンク

子divにある1つのAタグを除いて、divまたはその第1レベルの子のいずれかがクリックされたときにボックスをポップアップしようとしています。

私は単にクラスを切り替えて、うまく機能するdivを表示/非表示にしています。ただし、リンクをクリックしても、ボックスがポップアップ表示されます。targetとstoppropagationの使用を検討しましたが、コードで機能させることができません。

jQuery:

HTMLの概要:video_oddは、クリックすると子div video_desc_boxがクラスをvideo_desc_box_openに切り替えて、表示をnoneではなくinlineに変更するクラスです。

video_odd内のdivであるリンクがクリックされたときにこのスクリプトが実行されないようにするためにtoggleを使用する方法がわかりません。

2レベルの子リンクではなく、他の子がクリックされたときにクラスを変更したい。

助けてくれてありがとう!

編集:私は近づいていると思います:

でも

登録していません。リンクだけでなく、div video_list_titleをすべて一緒に除外するにはどうすればよいですか?)

0 投票する
2 に答える
2387 参照

jquery - document / body-event-listenerを使用せずに、クリックして要素を非表示にします

2つのdiv要素で構成される非常に単純なjQuery「ドロップダウンリスト」を作成しました。最初のdivをクリックすると、2番目のdivが表示されます。次に、そのdivの外側をクリックしたときに、2番目のdivを再び閉じたいと思います。しかし、次のようなドキュメントまたはボディイベントリスナーを使用することはできません(必要がない場合は、実際には使用したくありません)。

理由:ページ上に使用する他の要素がありe.stopPropagation();、ユーザーがドロップダウンを開いた後にそれらの要素をクリックしても、再び閉じません。

このプラグインjALDropdownは、クリックしてe.stopPropagation();も、またはページやブラウザの外のどこかをクリックしても、ドロップダウンを閉じるために処理され、document / body-event-listenerを使用していないようです:http:/ /india.assigninfo.com/assignlabs/jaldropdown

申し訳ありませんが、Operaでは動作しないため、使用できません。また、最小化されていないバージョンのソースコードが見つからなかったため、どのように機能するかを知ることができませんでした。

ドキュメント/body-event-listenerなしで要素、ページ、またはブラウザの外側をクリックするとドロップダウンが閉じる(要素が非表示になる)ように、この動作をアーカイブする方法について何かアイデアはありますか?ありがとう!

0 投票する
2 に答える
3194 参照

javascript - コンテナ内でのマウスホイールのスクロール - イベントのキャッチ

内部スクロール可能な DIV を含むページがあります。マウスをその上に置いてマウス ホイールでスクロールしようとすると、メイン ページが表示されたまま、その DIV の内容が必要に応じてスクロールされます。しかし、DIV のスクロール領域の一番下に到達すると、代わりにページ全体がスクロールし始めます。

その div にイベント ハンドラーを設定しようとしましたが、preventDefault()メソッドによって DIV 自体のスクロールも妨げられます。

ここに間違ったコードがあります:

preventDefault()ページのスクロールを防ぎますが、DIV のスクロールも許可しません。

stopPropagation()この場合、何もしないと思います

私は何か見落としてますか?..

0 投票する
2 に答える
4872 参照

javascript - タグセレクター付きのTwitterブートストラップドロップダウン

Twitter Bootstrapに質問があります。ドロップダウンプラグインを使用していて、タグセレクターを作成しようとしています。このリンクに例を作成しました:

http://jsfiddle.net/gatnc/

私はこれを試しました:

タグを選択するときにドロップダウンを閉じないより良い解決策はありますか?

注: [新しいタグ]をクリックします。

ありがとう!

0 投票する
1 に答える
123 参照

javascript - 親divでstopPropagationを使用するときにリンクを機能させる方法

:confirmおよび:method =>:deleteオプションを持ついくつかのリンクを含むモーダルポップアップがあります。問題は、stopPropagationを使用して、ユーザーがdivコンテンツ領域内をクリックしたときにモーダルが閉じないようにしていることです。

ただし、これにより、Railsが:remote => trueまたは:confirmまたは:methodを持つリンクに使用するJavaScriptが無効になります。

誰かがこの問題の回避策を知っていますか?

ありがとう!!

0 投票する
2 に答える
420 参照

javascript - event.stopPropagation(); 期待どおりに動作しない

関連するいくつかの記事を読みましevent.stopPropagation();たが、提供された解決策はどれもうまくいきませんでした。基本的に私が持っているのは、デフォルトですべての要素が折りたたまれたアコーディオン ウィジェットです。各要素ヘッダー (dt タグ) にもチェックボックスがあります。チェックボックスをクリックしても、アコーディオンがトリガーされて要素が展開されることはありません。

スパン (チェックボックスとして機能する必要があります) をクリックすると、それに「チェック済み」のクラスが追加されます。ただし、アコーディオン要素 (dd タグ) も展開します。私がjQueryでやっていることは次のとおりです。

アコーディオンのコンテンツは表示されませんが (これは良いことです)、<span>要素はクラスも変更されないため、「チェック済み」にはなりません。私も試してみました.live()が、どちらもうまくいきませんでした。

0 投票する
2 に答える
395 参照

javascript - この関数パラメーターはどのように未定義ですか?

ここに示すように、この「onclickoutシミュレーター」スクリプトを複製しようとしています:

http://jsfiddle.net/C9CL3/

ご覧のとおり、正常に動作します (私がテストしたすべてのブラウザーで、私が知る限り、これはブラウザーの互換性の問題ではありません)。

私のソリューションのコードは次のようになります。

これは pageLoad() にあります。

ご覧のとおり、イベントが未定義であるため、event.cancelBubble 行から予期しないエラーが発生しています。私は一生、理由を解明することはできません。

注: ブラウザーの互換性の理由から、fiddle デモとは異なる方法で cancelBubble をテストしています。

助けてくれてありがとう、本当にこれに固執しました。