1
<div class="chatbox-window">
    <div class="chatbox-title">
        <div class="chatbox-username"></div><div class="chatbox-close"><span class="chatbox-close-button"></span></div>
    </div>
    <div class="chatbox-content"><div class="chatbox-msg"></div></div>
    <div id="chatbox-posting"></div>
</div>

    $(".chatbox-close-button").click(function(){
        $(this).parent(".chatbox-close").parent(".chatbox-title").parent(".chatbox-window").remove();
    });

以下、私は使用します:

$(this).parent(".chatbox-close").parent(".chatbox-title").parent(".chatbox-window") to get the ".chatbox-window"

だが:

を取得するためのより短い方法はありますか.chatbox-window

追伸 HTMLコードを変更しない場合。

4

4 に答える 4

1

使用するparents()

公式文書

説明:一致した要素の現在のセット内の各要素の祖先を取得します。オプションでセレクターによってフィルター処理されます。

$(this).parents(".chatbox-window").remove();
于 2013-03-14T05:14:21.747 に答える
0

.closest()を使用

セット内の各要素について、要素自体をテストし、DOM ツリー内のその祖先をたどることによって、セレクターに一致する最初の要素を取得します。

$('.chatbox-close-button').click(function(){
    $(this).closest('.chatbox-window').remove();
});

デモ:フィデル

于 2013-03-14T05:17:22.867 に答える
0
 $(this).parents('div:eq(0)').remove();
于 2013-03-14T05:17:28.023 に答える
0

jquery closest() を使用できます。ドキュメントはこちら

$(this).closest('.chatbox-window').remove()
于 2013-03-14T05:17:41.480 に答える