問題タブ [attachevent]
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 - クロスブラウザー検出のための addEventListener コード スニペットの翻訳と使用法
モデル化したいコードを見つけました。しかし、私はいくつか質問があるだけで、おそらくあなたたちが助けてくれるでしょう. コードは次のとおりです。
これで、コードが addEventListener または attachEvent をチェックしていることをある程度理解できました。しかし、次の行は詳細にどういう意味ですか? 次のように書かれた JavaScript を見たことがありません。
また、このコードはブラウザやオブジェクトの検出に適していますか?
私はスクリプトを書いていますが、最新のブラウザーだけでなく、古いブラウザーでも確実に実行されるようにする必要があります。私が理解していることから、最新のブラウザーのほとんどは addEventListener をサポートし、IE は attachEvent をサポートしています。古いブラウザーがいずれかをサポートしているかどうかはわかりません。
コメントアウトされた行に関する限り:
captureEvents は古い Firefox ブラウザーでのみサポートされていることをどこかで読みました。コード全体のコンテキストで、これらの行は必要ですか?
あらゆる洞察に満ちたコメント、批評、アドバイスを歓迎します。ありがとう!:)
javascript - element.dispatchEvent は関数ではありません
プラグインを作成しましたが、アクティブな場合、エディターを無効にし、以下の firebug Mozilla でエラーが表示されます
プラグインは非常にうまく機能しますが、エディターを無効にします。原因は何ですか?
javascript - this.style.backgroundColorはIE7/8では機能しません
私のコードは:
Chrome、FireFox、ie9ではうまく機能しますが、IE7/8では機能しません
エラーメッセージは次のとおりです。「backgroundColor」のプロパティ値を設定できません:オブジェクトがnullまたは未定義です
私は何がいいの?
javascript - すべての要素で起動する javascript addEventListener
明らかなことを見逃していると確信していますが、次の addEventListener コードがどこでも (送信ボタンだけでなく) 発火する理由はわかりますか?
HTML:
JS:
修正は変更です
に
私のタイプミス:(
javascript - これら2つのaddEvent関数の違いは何ですか?
これが最初です:
そして2番目:
2つ目はプレフィックスを追加するだけですが、何に使用されますか?
javascript - attachEvent からイベントの呼び出し元を取得する
私は何か簡単なことをしようとしています.JSを介してロードされている画像がたくさんあります. イベント リスナーを load イベントにアタッチし、Image が読み込まれた後、リスナー関数で呼び出し元の Image を取得し、そこからプロパティを取得したいと考えています。これが私のコードです。
javascript - attachEvent はこの JavaScript を使用できません
イベントリスナーにはクロス互換性IE7以上が必要です。私が使用しているシステムのため、リスナーの作成には外部 js ファイルしか使用できません。すべてのテキストエリアボックスのルールを作成して、テキストをラップするときに高さを増やして、スクロールする必要がないことを意味します(すべてのテキストが表示された状態で印刷する必要があります)。これは addEventListener を使用して正常に動作しますが、THIS を使用できないため、attachEvent を使用してこれを一般的に動作させることはできません。
これは、IE 8 の最後の textarea フィールドでのみ機能します。最後のオブジェクトの値しかないため、これを想定しています。次に何をすべきかわからない
javascript - 受け入れるように定義されているよりも多くのパラメーターを使用してJSメソッドを呼び出すとどうなりますか?
通常のオールインザファミリーJS開発者(me)定義関数と、事前定義されたDOMメソッドの両方について知りたいです。attachEvent
WHATWGの署名を使用してIEを呼び出そうとするとどうなりaddEventListener
ますか?例えば、
elem.attachEvent('onbillgates\'mom', function(e){ this.mount(); }, false);
具体的には、に注意してくださいfalse
。attachEvent
メソッドのシグニチャが2つの引数しか必要としない場合でも、それは何かをトリップしますか?
ありがとう。
internet-explorer - IE10 は「addEventListener」または「attachEvent」を使用しますか?
これまでのところ、それはまだ邪悪で、頭をぶつけて苛立たしく、風変わりなものになるのでしょうか? 彼らはいつプログラムに参加するのですか?個人的には、人々がすぐにフリーソフトウェアのためにそれらを放棄しないことを願っています。そうすれば、より短いテストを使用できます。
var addEventListener = !-[1,] ? "attachEvent" : "addEventListener";
毎回メソッド自体をテストする代わりに。それとも、IE10 は両方をサポートしますか?
javascript - メモリ リークを処理する IE の最適な/標準の addEventListener 回避策は何ですか?
広範な調査中に、この問題を処理する多くの回避策を見てきました。(いくつかの良いリンクについては、この SO 投稿を参照してくださいattachEvent()
。) 私の主な関心事は、IEでの使用に起因するメモリ リークの処理です。とにかく、私の研究のすべての後、私はこの回避策を見つけました:
いくつか質問があります。このコードを見つけるのは簡単ではなかったので、このコードを使用している人はあまりいないと思います。そのため、他の人はさまざまなコードを使用しており、コードに問題はないと私は信じています。これが事実である場合、私が投稿したこのコードはやり過ぎですか?
また、私の調査で、これに似た無数の回避策が見つかったことも心配しています。
このコードは、IE によって引き起こされるメモリ リークを処理しません。それでは、私の質問に移りましょう:プレーンな JavaScript を使用して処理する最善/標準的な回避策は何attachEvent()
ですか?それは IE でのメモリ リークですか?