Ответ 1
Вы можете проверить свойство CSS display
:
if ($('#car').css('display') == 'none') {
alert('Car 2 is hidden');
}
Вот демонстрационная версия: http://jsfiddle.net/YjP4K/
Это мой div
<div id="car2" style="display:none;"></div>
Затем у меня есть кнопка "Показать", которая покажет div при нажатии:
$("show").click(function() {
$("$car2").show();
});
Итак, прямо сейчас я хочу проверить, пока div #car2
все еще скрыт перед отправкой формы:
if($('#car2').is(':hidden')) {
alert('car 2 is hidden');
}
Теперь вот проблема. Хотя div #car2
уже отображается, я все равно получил предупреждающее сообщение, что означает, что jQuery предполагает, что div #car2
по-прежнему скрыт.
Моя версия jQuery 1.7.
Спасибо.
EDIT:
Как сказал яшма, мой код верен и может быть запущен с помощью этой демонстрации.
Что я подозреваю, есть конфликт с формой jquery для плагина wizard, который я использую с моей формой. У кого-нибудь есть идея решить это?
Вы можете проверить свойство CSS display
:
if ($('#car').css('display') == 'none') {
alert('Car 2 is hidden');
}
Вот демонстрационная версия: http://jsfiddle.net/YjP4K/
Try:
if(!$('#car2').is(':visible'))
{
alert('car 2 is hidden');
}
Попробуйте
if($('#car2').is(':hidden'))
{
alert('car 2 is hidden');
}
Попробуйте вместо этого проверить свойство: visible.
if($('#car2').not(':visible'))
{
alert('car 2 is hidden');
}
Вы заметили свою опечатку, $car2
вместо #car2
?
В любом случае :hidden
работает как ожидалось, попробуйте здесь.
Вы можете использовать
if (!$("#car-2").is(':visible'))
{
alert('car 2 is hidden');
}