問題タブ [mutation-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.
javascript - 特定のIDを持つ要素がいつDOMに挿入されたかを検出する最も効率的な方法は何ですか?
タイトルが示すように、特定の ID または CSS クラスを持つ要素が DOM に挿入されたときの正確なタイムスタンプを検出したいと考えています (また、削除されたときを検出することもできます)。最も明白な方法は、document.getElementById
検索したい要素の ID を指定して呼び出すことにより、ドキュメントを定期的にポーリングすることですが、この方法はあまり正確ではなく、検出したい要素が複数ある場合、パフォーマンスが非常に高くなる可能性があります。
Mutation EventsとMutation Observersを調べましたが、私が理解していることから、要素が挿入または削除されたかどうかを検出するには、リスナーをルート DOM 要素に追加する必要があります。これは、必要に応じてパフォーマンスに大きな影響を与える可能性があります。ページに要素が挿入または削除されるたびに、追加の JS を実行します。
私が気付いていない、より最適化されたソリューションはありますか? また、jQuery であっても、外部の JS ライブラリを使用しない方がよいでしょう。
jquery - DOMSubtreeModified ミューテーション イベントの使用。jQueryで
ページで次の jQuery コードを使用しましたが、chrome ではすべて正常に動作しますが、Firefox でそれぞれのページを開くと、応答しないスクリプト エラーが発生します。
DOM3 仕様に従って、ミューテーション イベントが非推奨になっていることは知っています。それでも、誰かがここで私を助けてくれるなら、私は義務を負います.
それぞれの HTML は次のとおりです。
javascript - javascriptでミューテーションレコードオブジェクトを削除する方法
Div 要素の変更を観察しています。これは、ajax 呼び出しを使用して子 div で満たされています。私の目的は、観察された Record オブジェクト内でいくつかのチェックを行い、それらのいくつかをフィルタリングすることです。観察されたミューテーション リストからこれらのミューテーション レコードを削除/削除/フィルタリングするにはどうすればよいですか? そしてそれらをウェブページでフィルタリングします。
ミューテーション リストからミューテーション レコードを削除しようとしましたが、うまくいきませんでした。ご協力いただきありがとうございます。
javascript - DOMNodeInserted および DOMNodeRemoved イベント
以下のコードは、カウンターを除いて正常に動作しています。リストにアイテムを追加すると、カウンターは正確ですが、リストからアイテムを削除すると、カウンターから 1 が減算されません。何か案は?
HTML
JavaScript
javascript - ユーザーのブラウザに JavaScript コードを安全に送信することはできますか?
JavaScriptコードをクライアントに送信し、ユーザーが傍受、表示、または変更することなく、情報をサーバーに送り返すことは可能ですか? 私の知る限り、これは不可能ですが、socket/ajax などの特定のリアルタイム プロトコルについては不明です。誰かが Web ソケットを傍受できますか?
これが不可能な場合、コードが変更されていないことを確認する、または少なくともコードが変更されるのをより困難にする賢い解決策はありますか? おそらくドム変異イベント?コード/データの特定の機密部分を難読化するのはどうですか?
例: Google アナリティクスは、特定のユーザーが偽のデータを作成していないことをどのように認識しますか?
javascript - 要素への参照があり、それがドキュメントに追加されたときを検出する方法は?
私は、使用される環境について何も知らない JavaScript モジュールを開発しています。
そして、技術的に言えば、次の機能を実装したいと考えています。
element
は でHTMLElement
あり、この要素の親は、モジュールの初期化中に不明な場合があります。ページに表示されcallback
たらトリガーする必要がある関数です。element
要素がドキュメントに追加された場合は、コールバックをすぐに呼び出す必要があります。element
がまだ追加されていない場合は、ドキュメントに表示されると関数がトリガーされcallback
ますelement
。
問題は、ミューelement
テーション イベントを使用して追加イベントを検出できることDOMNodeInserted
です。ただし、ミューテーション イベントは非推奨になりました。そして、それはMutationObserver
このタスクを処理できないようですよね?
ここに私のコードスニペットがあります: