2015-03-20 5 views
3

Я новичок в Javascript и с помощью JQuery у меня возникла проблема. Я сделал кнопку прокрутки вверх, которая должна быть видна при прокрутке вниз. Я получил его на работу, когда я нажимаю его, я плавно прокручиваю вверх, а когда вы на вершине, он исчезает. Только когда я впервые загружаю страницу, она уже видна, а затем, когда я прокручиваю ее вниз, кратковременно исчезает до тех пор, пока я не дойду до точки, где находится элемент, и она появляется снова, когда вы еще больше прокручиваете вниз. Вот мой код:Прокрутить до конца

$(document).ready(function(){ 

    $(window).scroll(function(){ 
    if ($(this).scrollTop() > 100) { 
     $('#backTop a').fadeIn(); 
    } 
    else { 
     $('#backTop a').fadeOut(); 
    } 
    }); 

    $('#backTop a').click(function(){ 
    $('html, body').animate({scrollTop : 0},800); 
     return false; 
    }); 
}); 
+0

В соответствии с вашим кодом элемент будет отображаться каждый раз, когда прокрутка пересекает отметку 100 значений сверху. Как вы на самом деле решаете, находится ли элемент в порт просмотра или нет? –

+0

Как насчет того, чтобы сделать скрипку или показать нам рабочую демонстрацию ??? Хотите также css – Manwal

+0

Обратите внимание, что вам лучше с '.preventDefault()', чем с 'return false'. [Здесь] (http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/) хорошо читается. –

ответ

0

Вам также необходимо изменить CSS кнопки. По умолчанию этот элемент будет отображаться после отображения всех элементов перед ним в HTML. Вы можете изменить CSS, чтобы обеспечить элемент прилипает к нижней части окна просмотра всегда:

#backTop a{ 
    position: fixed; 
    display: none; 
    bottom: 10px; 
    right: 10px; 
} 

Фиксированное позиционирование гарантирует, что ваш DIV всегда остается в том же положении. Вы можете поместить элемент, используя правила верхнего, правого, левого и нижнего уровней. Я отключил отображение дисплея, потому что изначально кнопка «назад к началу» не должна быть видимой.

+0

Это сработало, спасибо! Я думал, что это проблема кода, но мне просто нужно было скрыть ее в CSS. – Kirsten

+0

Обратите внимание, что для обеспечения его в верхнем «слое» может потребоваться «z-index». –

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