2013-05-15 2 views
0

У меня есть логотип, который на готовом документе скрыт с непрозрачностью 0, а затем, когда пользователь прокручивает до 400 пикселей, логотип оживляет на вид, а когда он меньше 400 пикселей, он оживляет из Посмотреть.с помощью функции прокрутки для анимации переключения элемента

На данный момент, если вы запустите прокрутку, она оживляет, а затем, когда вы прокручиваете ее за пределы 400 пикселей, она оживляет. Есть ли способ, чтобы я не мог его оживить в момент прокрутки. http://jsfiddle.net/r1chyr1ch/DT32G/3/ Надеюсь, это имеет смысл.

$(document).ready(function(){ 
$('.menuLogo').css('opacity', 0); 
$(window).scroll(function() { 
    if ($(this).scrollTop() > 400) { 
     $('.menuLogo').addClass('slideDown').removeClass('slideUp'); 
    } else { 
     $('.menuLogo').removeClass('slideDown').addClass('slideUp'); 
     } 
    }); 
}); 

ответ

0

Ваш jsfiddle ссылка не отображается, но я подозреваю, что .menuLogo либо имеет непрозрачности установлено значение 1 или не установлен вообще в вашем CSS. Оба будут показывать логотип до тех пор, пока js не начнет и не добавит дополнительный класс.

+0

Привет @Duncan Beattie здесь ссылка [ссылка на код, касающийся использования функции прокрутки для анимации, чтобы переключить элемент] (http://jsfiddle.net/r1chyr1ch/DT32G/3/) – richard

+0

Как вы можете видеть логотип при загрузке, когда его нужно скрыть с самого начала. – richard

+0

Установка '.menuLogo {opacity: 0}' скрывает его, когда загружается страница, но когда вы прокручиваете первые шаги шага анимации, в которых значение opacity возвращается в 1, чтобы затем оно могло исчезнуть. [link] (http://jsfiddle.net/pEqcb/1/) упрощен, удалены ключевые кадры и используются базовые переходы вместо –