Если нажата <li>, скрыть внутренний div - PullRequest
1 голос
/ 09 февраля 2009

Мой DOM выглядит так:

<li id="li1">
         <div class="c1"></div>
</li>
<li id="li2">
         <div class="c1"></div>
</li>

Используя jQuery, если щелкнуть первый <li>, я хочу, чтобы внутренний <div></div> был скрыт.

Ответы [ 4 ]

8 голосов
/ 09 февраля 2009
$("li:first").click(function() {
    $(this).children("div").hide();
});
2 голосов
/ 09 февраля 2009

Вы столкнетесь с проблемами, когда идентифицируете 2 элемента списка с одинаковым идентификатором. Если вы хотите, чтобы один и тот же CSS применялся к обоим, используйте вместо этого классы.

1 голос
/ 09 февраля 2009

это может сработать для вас:

примечание: убедитесь, что вы включили jquery.js, я был ленив и не вставил его сюда.

<html>
<head>
<script type="text/javascript" language="javascript">
$(document).ready(function(){

    $(".clickableLI").click(function(){
        $(this).find("div").hide();    
    });

});
</script>

</head>
<body>
    <ul>
        <li class="clickableLI">
             <div class="c1"></div>
        </li>
        <li class="clickableLI">
             <div class="c1"></div>
        </li>
    <ul>

</body>
</html>
0 голосов
/ 09 февраля 2009

Недопустимо наличие двух идентичных идентификаторов xHTML

Не уверен насчет точного синтаксиса jQuery

но в коде sudo было бы что-то вроде:

li1 addEvent ('click')
{

получить дочерний элемент li1, фильтр по классу c1
установить стиль для дочернего элемента (отображать, нет)
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...