2014-06-19 5 views
3

У меня есть три возможных случая для div - он либо имеет класс .first, либо .last или none.Если у div есть контент для изменения класса - три случая

мне нужно изменить содержание другой DIV на основе этих классов, но я делаю что-то неправильно ...

Может кто-нибудь дать мне руку и скажите мне, что я делаю неправильно?

jQuery(document).ready(function() { 

    if (jQuery('.pricing-plan').hasClass('first')) { 
     jQuery('.tagline').text('primeiro'); 
    } 
    else if (jQuery('.pricing-plan').hasClass('last')) { 
     jQuery('.tagline').text('ultimo'); 
    } 
    else { 
     jQuery('.tagline').text('nada'); 
    } 

}); 
+3

Опубликовать скрипту или вашу HTML-структуру –

+0

Я не вижу ошибок в размещенном jQuery-коде. – Satpal

+0

Вы все делаете правильно – martynas

ответ

1

Updated Demo

  • У вас есть несколько элементов с классом .pricing-plan и .tagline. В таких случаях вы должны использовать .each() для перебора по каждому элементу.
  • Внутри каждого, чтобы получить контекст текущего .pricing-plan использования $(this)

  • В текущем коде селектор jQuery('.pricing-plan') только возвращенное/проверил первый .pricing-plan


Проверьте это,

jQuery(document).ready(function() { 
    jQuery('.pricing-plan').each(function() { 

     if (jQuery(this).hasClass('first')) { 
      jQuery(this).find('.tagline').text('primeiro'); 
     } else if (jQuery(this).hasClass('last')) { 
      jQuery(this).find('.tagline').text('ultimo'); 
     } else { 
      jQuery(this).find('.tagline').text('nada'); 
     } 
    }); 

}); 
+0

PERFECT !! THANK YOU !! Можете ли вы сказать мне, что я делаю неправильно? – licinio

+1

Добавил очки в ответ, у вас было несколько классов с одинаковым именем. –

+0

Большое спасибо! – licinio

Смежные вопросы