JQuery - не могу скрыть родительский - PullRequest
3 голосов
/ 02 февраля 2011

Я, кажется, наткнулся на проблему с очень простой задачей. Я пытаюсь скрыть родительский div при нажатии на ребенка.

Вот мой HTML;

<div class="wave-wrap"><div class="wave">click me</div></div>

<div class="wave-wrap"><div class="wave">click me</div></div>

<div class="wave-wrap"><div class="wave">click me</div></div>

Вот мой jQuery;

$('.wave').click(function() {
alert($(this).parent().html());                   
$(this).parent().hide('slow');
});

В предупреждении указывается, что у меня правильный селектор, но родительский div отказывается скрывать Есть идеи почему?

Ответы [ 2 ]

1 голос
/ 02 февраля 2011

Попробуйте $(this).closest(".wave-wrap").hide() вместо.

0 голосов
/ 02 сентября 2012

Ваш код работает очень хорошо. Посмотрите на следующий пример:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Untitled Document</title>
        <script type="text/javascript" src="jquery.js"></script>
        <script type="text/javascript">
            $(document).ready(function(e) {
                $('.wave').click(function() {
                    alert($(this).parent().html());                   
                    $(this).parent().hide('slow');
                });
            });
        </script>    
    </head>

    <body>
        <div class="wave-wrap"><div class="wave">click me</div></div>

        <div class="wave-wrap"><div class="wave">click me</div></div>

        <div class="wave-wrap"><div class="wave">click me</div></div>    
    </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...