Скрыть следующую <div>, если существует предыдущая <div> - PullRequest
0 голосов
/ 21 сентября 2009

Что я делаю не так?

$('function') {

$('#page #Description:has(.next('.subdescription'))').css('display', 'none');

});

где HTML это:

<div id="page">
  <div id="description"> </div>
  <div class="subdescription">Content</div>
</div>

Может быть, стоит подумать над решением?

1 Ответ

3 голосов
/ 21 сентября 2009

1) .next - это функция, а не селектор.

2) Ваш прогон при использовании $ ('function') при загрузке некорректен.

3) Следующее должно работать

$(function(){
    if($('#page #description + .subdescription').length > 0){
        $('#page #description').hide();
    }
});

Просто добавлю немного пояснения ниже:

$(function(){

Это равно $ (документ) .ready (function () {/ * код здесь * /})

$('#page #description + .subdescription')

Вернуть все элементы с классом 'subdescription', которые являются родственными элементами для div с id 'description'

$('#page #description').hide();

Сокращение для $ ('селектор'). Css ('дисплей', 'нет')

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