2010-12-16 2 views
1

Как вы проверяете, имеет ли div прозрачность = 0?jQuery условно для непрозрачности?

Я пробовал:

if (jQuery("#slideshow div#prev").css({opacity: 0})) 
    { 
jQuery("#slideshow div#prev").animate({opacity: 1.0}, 500); 
    } 

, но это, кажется, выпалить анимацию, даже когда непрозрачности уже 1,0?

+0

Поскольку «prev» уже является идентификатором, единственное, что вам нужно в селекторе, это «#prev» – 2010-12-16 04:55:19

ответ

5

Использование css('opacity'):

if (!jQuery("#slideshow div#prev").css('opacity')) { 
    jQuery("#slideshow div#prev").animate({opacity: 1.0}, 500); 
} 

Этот код проверяет возвращаемое значение .css('opacity') является falsy, если он есть, то либо CSS не было установлено или само значение falsy, в этом случае вам будет хотите продолжить и запустить звонок animate.

1

Правильный синтаксис будет

if (!jQuery("#slideshow div#prev").css('opacity')) 
    { 
     jQuery("#slideshow div#prev").animate({opacity: 1.0}, 500); 
    } 

CSS ('непрозрачность') вернет 0, и если() условие будет стать реальностью.

+1

. Ваше условное является совершенно неправильным. `0 == false`, поэтому условие будет` false`, если непрозрачность `0`. Таким образом, этот код установил непрозрачность `1` только тогда, когда она уже` 1` ?? WTF – 2010-12-16 04:55:50

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