4

チャットごとに個別のdivが作成されるブラウザベースのチャットアプリケーションがあります。
チャット全体が外部モジュールによって管理されており、私はそれらのコードにアクセスできません。

どこにもIDはなく、チャットウィンドウ用に動的に作成されたdivのcssクラス名のみであることに注意してください。

新しいチャット会話が開始されるたびに、そのチャットの新しいdiv(css class:chat_incoming)が親div(css class:'tabcontent')の下に作成されます。

jQueryを使用して、親(css class:tabcontentを使用)divを監視して、新しい子の追加(css class:chat_incomingを使用)などの変更を確認するにはどうすればよいですか?

ここには、divを監視するために使用できるクリックイベントがありません。また、チャットメッセンジャーウィンドウが読み込まれた直後にdivが読み込まれることもありません。チャットの開始は、ユーザーがログインした後はいつでも発生する可能性があり、それまでは親divにチャット用の子divが作成されません。

私は自分で宿題をしましたが、どこにも行きませんでした。

jQueryを使用すると、すでに利用可能/動的に作成されたdivのイベントを監視できるようにするために、「。on」を使用する必要があるかもしれないことを理解しましたが、JQuery .on()で使用するクリックイベントはここにはありません。

私の次の推測は使用することでした

$('tabcontent').bind('DOMNodeInserted DOMNodeRemoved', function(event) {alert('hi')});

しかし、何らかの理由でこれも機能しないようですか?(ここでフィドルを参照)

任意のガイダンスをいただければ幸いです。

ありがとうございました。

4

2 に答える 2

3

tabcontentあなたのjQueryは、ではなく、を探してい.tabcontentます。tabcontentというクラスではなく、というタグのようにtabcontent

それを変更すると、機能し始めるはずです(うまくいけば、スクリプトで他のすべてがうまくいけば)

$('.tabcontent').bind('DOMNodeInserted DOMNodeRemoved', function(event) {alert('hi')});
于 2012-11-21T12:51:58.330 に答える
1

これを試すことができます..

$(".tabcontent").bind("DOMSubtreeModified", function() {
    alert("tree changed");
});

お役に立てれば

于 2012-11-21T12:53:25.803 に答える