0

私はプロジェクトを行っています。そこでは、いくつかのHTML div要素を削除する必要がある、いくつかのユーザーインターフェイスの微調整で立ち往生しています。

このコードを確認してくださいhttp://jsfiddle.net/YVZH5/テキストをクリックすると、青いタグが表示されます。ユーザーがXをクリックしたときにそのタグを削除する必要がありますが、機能していません。

そしてそれはここで働いていますhttp://jsfiddle.net/Jst4v/では、問題はどこで発生しますか?

ありがとう!

4

2 に答える 2

3

あなたは追跡する必要があります

$("#service-sets").click(function(){
    $("#facebook-tag").remove();
});

$("#service-sets").on('click', '#facebook-del', function(){
    $("#facebook-tag").remove();
});

なぜなら、#facebook-del(十字アイコン)はタグを削除し、DOMの準備ができた後にDOMに到達するため、デリゲート、つまりライブイベントが必要になるためです。

デモ

于 2012-06-02T13:00:02.190 に答える
2

最初のフィドルで機能し、2番目のフィドルでは機能しない理由は、クリック関数をアタッチしようとしている要素(facebook-del)が、割り当て時にDOMに存在しないためです。

2番目の例では、要素はページの読み込み時に存在するため、クリック機能が割り当てられます。

このような動的に追加された要素にクリックイベントを割り当てる方法として、.on()を見てみてください。

于 2012-06-02T13:06:01.087 に答える