Jquery скрыть проблему элемента - PullRequest
0 голосов
/ 05 апреля 2011

У меня на странице много таких

<div class="price">

15 Dollars <a class="showHide">Show Partecipants</a>

</div>

<div class="partecipants">

</div>  

Я хочу скрыть элемент "showHide" , когда "Partecipants" div пуст и я использовал это:

$(document).ready(function(){
$('div.partecipants:empty').each(function() {  

$(this).prev('div.price').children().hide(); }); 
});

Это работает только в IE. Не работает в Chrome и Firefox. Почему?

Должен ли я искать ошибку где-то еще, кроме этих нескольких строк кода?

Спасибо

Luca

Ответы [ 3 ]

2 голосов
/ 05 апреля 2011

Если .partecipants пуст, тогда showHide будет скрыт.Вы можете сделать это, используя следующее.

$('.partecipants').each(function() {
    if (!$(this).contents().length) {
        $(this).prev('.price').hide();
    }
});

Проверьте рабочий пример на http://jsfiddle.net/JWgHJ/1/

1 голос
/ 05 апреля 2011

Я думаю, что это из-за новой строки ... попробуйте изменить HTML на

<div class="partecipants"></div>  

и между прочим, что означает слово "partecipants"?

0 голосов
/ 05 апреля 2011

попробуйте это:

$(document).ready(function(){
    $('.partecipants').each(function() {  
        if ($.trim($(this).text()) === '') {
            $(this).prev('div.price').children().hide();
        };      
    });
});
...