問題タブ [javascript-events]

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 投票する
3 に答える
1780 参照

javascript - hrefが呼び出されたときにアンカータグを識別する

関数内で、アンカータグhrefによって呼び出されたかどうかをどのように識別できますか?

この場合、イベントはnullです。したがって、event.targetとevent.srcElementは機能しません。

コード

HTML

JavaScript

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

javascript - どの要素に焦点が当てられているかを判断する

重複の可能性:
どのhtmlページ要素にフォーカスがあるかを判断する方法は?
どのJavascript要素にフォーカスがあるかを確認するにはどうすればよいですか?

ドキュメント内のどの要素が現在フォーカスされているかを判断する方法はありますか?理想的には、これまでの要素をウォークスルーする必要はありません。

0 投票する
6 に答える
4021 参照

javascript - ユーザーが誤って離れて移動するのを防ぎます

私の問題は、次の単純なJavaScriptコードを使用するよりも少し複雑です

eコマースのWebページで、ユーザーがショッピングカートに商品を持っていることをユーザーに知らせて、前に気が変わったようにします。

  1. ブラウザのタブ/ウィンドウを閉じる
  2. 別のドメインに移動する

上記のJavaScriptメソッドは、ユーザーがドメイン内をナビゲートしている場合でも呼び出されるため、私の問題を解決しません。

短い:

  1. ユーザーがウィンドウを閉じようとします->ダイアログを表示
  2. ユーザーがブラウザのアドレスバーでwww.mydomain.com/shoppingcartのURLをwww.google.comに変更->ダイアログを表示
  3. ユーザーは、チェックアウトボタンを使用してwww.mydomain.com/checkoutに移動するか、ブラウザーの[戻る]ボタンを押します->ダイアログを表示しない
0 投票する
2 に答える
3113 参照

javascript - IE のフレーム全体で keyPress を処理する

複数のフレームでonkeydownイベントを処理しようとしました(いいえ、残念ながらフレームを取り除くことはできません)。他のフレームでドキュメントのハンドルを取得し、関数と同じ onkeydown ハンドラーを設定しています。エラーはスローされませんが、後でドキュメントの設定を確認すると、onkeydownが null です。IE6IE7で同じ結果が得られました。私は何を間違っていますか。

  • 関数

    /li>
  • 電話

    setTimeout("setKeyHook(parent.document.getElementById(\"bottom\").document);", 1000);

  • 出力

  • 実行後

フレーム間で同じイベント ハンドラーを適用するにはどうすればよいですか?

注: これは IE6 と IE7 で動作する必要があります (動作する必要があります)。

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

javascript - イベントが一度トリガーされた後、イベントがトリガーされないようにします

私は次のコードを持っています:

基本的に私がやろうとしているのは、(この質問のように)「カバー」divをフェードアウトさせ、いくつかのブロック要素の内側のdivをフェードアウトさせ、静かに移動させ、フェードインさせてシームレスな効果を実現することです。

ただし、これを実行すると、マウスを動かすたびに、上記のすべてが実行されます。これは私が望んでいることではなく(一度だけ発生させたいのですが、それだけです)、ブラウザの速度が低下し、スタックアップが発生する可能性があるため、問題が発生します。

一度実行すると実行を停止する方法をどこかで読んだと思いますが、思い出せないので、それを行う方法もありますか?ありがとう。

0 投票する
6 に答える
5046 参照

asp.net - Firefox、IE、Opera、Safariでステータスバーメッセージを非表示にするスクリプト?

現在私はこれを使用しています

にとって

これはIEでは正常に機能しますが、Firefoxでは機能しません。

どうすればこれを変更できますか。

リンクボタンのステータスバーメッセージを無効にしたい。

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

javascript - クロスフレームと呼ばれるときに、JavaScriptイベントがクロージャーで正しく設定されていません

2フレームページのトップフレームに次のコードがあります。

これは元のドキュメントの読み込みで機能しますが、別のフレームからこの関数を呼び出すと(通常、1つのフレームのみがリロードされる場合)、フックが設定されますが、onkeydown関数が起動すると、適切な引数を受け取らず、代わりにevt ==ヌル。

完全なコードは次のとおりです。

KeyFrameTest.asp

KeyFrameTestTop.asp

KeyFrameTestBottom.asp

問題を再現するには、下部のフレームを右クリックし、[更新]をクリックして、[フックのリセット]をクリックし、キーを押します。

関連する質問:IEのフレーム間でkeyPressを処理する

Javascriptクロージャに関する記事も読んだことがありますが、どのように適用されるのかわかりません。

質問が狭かったことをお詫びしますが、これの秘訣を理解するのに十分なJavascriptを本当によく知りません。

0 投票する
3 に答える
10789 参照

javascript - this.click()と$(this).click()の違いは何ですか?

結局、これは特に修正が必要な問題ではないと判断しましたが、なぜそれが起こっているのかわからないのが気になります。

基本的に、私はいくつかのチェックボックスを持っています、そして私はユーザーがそれらの特定の数だけを選択できるようにしたいです。私はその効果を達成するために以下のコードを使用しています。

そして、私がそれをテストしていたとき、私が使用した場合、私は気づきました:

Javascriptは私が期待するように反応しましたが、次のように使用すると次のようになります。

実際には、カウンターのカウントが上がります。

カウンターを使用してカウントを維持するのが最も安全な方法ではないことは理解していますが、必要な量を超える量がデータベースに入力されないようにするサーバー側のエラーチェックがあります。これが私が決定した理由です。実際に修正する必要はありません。

編集:$ jは、noConflictモードでjQueryを使用する必要があるためです...

0 投票する
6 に答える
25786 参照

javascript - Javascriptのイベントリスナー呼び出しからオブジェクトのプロパティにアクセスする

以下では、Javascriptでオブジェクトを作成しています。コンストラクター内で、イベントリスナーを設定しています。問題は、イベントが発生すると、this.propが見つからず、undefinedが出力されることです。どうすればこれを解決できますか?