2013-10-20 3 views
1

У меня есть этот код:.Остановка «Назад к списку Кнопка» перед сноске

 $(function() { 
// cache scroll to top button 
var b = $('#back-top'); 
// Hide scroll top button 
b.hide(); 
// FadeIn or FadeOut scroll to top button on scroll 
$(window).on('scroll', function(){ 
    // if you scroll more then 400px then fadein goto top button 
    if ($(this).scrollTop() > 500) { 
     b.fadeIn(); 
    // otherwise fadeout button 
    } else { 
     b.fadeOut(); 
    } 

}); 
// Animated smooth go to top 
b.on('click', function(){ 
    $('html,body').animate({ 
     scrollTop: 0 
    }, 2000); 
    return false; 
}); 
$('#back-top').) 
}); 

Все работает очень хорошо, но я не могу найти решение, чтобы остановить кнопку прокрутки, прежде чем он попадает в нижний колонтитулы :( Я надеюсь, что кто-то здесь есть решение моей проблемы !? Любая помощь или совет был бы очень полезно Спасибо

Обновление:!

хорошо я получаю там !! я обновленное-й e скрипта с новым кодом: http://jsfiddle.net/q8DUC/6/
Я реализовал линию, которая обеспечивает плавную прокрутку для каждого href = "#" и ее работу!
BUT У меня все еще есть проблема, что элемент back-top прокручивается в нижний колонтитул! Я бы предложил любые идеи или помочь сделать стоп-кадр для остановки до нижнего колонтитула! СПАСИБО!!



UPDATE 26/10/14:

Есть немного дальше: http://jsfiddle.net/q8DUC/20/
Просто не знаю, как я могу избежать прыжки кнопки!
Есть ли способ придерживаться кнопки внизу, а не сверху: 0 ???

Как всегда СПАСИБО за каждое предложение или помощь!

+0

Можете ли вы добавить jsfiddle? – sudhAnsu63

+0

есть. http://jsfiddle.net/q8DUC/ как-то анимация не работает, но вы можете видеть, что кнопка прокручивается в нижний колонтитул ... – user2899161

+0

хорошо я туда добираюсь !! Я обновил скрипку с новым кодом: http://jsfiddle.net/q8DUC/6/ Я реализовал линию, которая позволяет плавно прокручивать каждый href = "#" и его работу! НО у меня все еще есть старая проблема, что элемент back-top прокручивается в нижний колонтитул! Я бы предложил любые идеи или помочь сделать стоп-кадр для остановки до нижнего колонтитула! СПАСИБО!! – user2899161

ответ

0

Это грубое решение, для которого вы пытаетесь достичь.

Анимация не совершенен здесь, но это ваша рабочая jsfiddle - http://jsfiddle.net/q8DUC/5/

Вы должны изменить вашу функцию следующим образом:

$('#backTop').hide(); 
$(window).scroll(function(){ 

var stop = $('#footer').position().top - $(window).scrollTop(); 

var bottomofbutton = $('#backTop').position().top + 100; 

var bottom = stop - $('#backTop').height() + 'px'; 
console.log(bottom); 
if ($(window).scrollTop() >100){ 
    $('#backTop').fadeIn(); 
} else { 
$('#backTop').fadeOut(); 
}; 

if (stop <= bottomofbutton){ 
    $('#backTop').css('top',bottom); 
} else if (stop >= bottomofbutton){ 

    $('#backTop').css({'bottom': '100px', 
         'top': ''}); 
} 
}); 

Я также переименовали ваш # обратно-топ идентификатор, потому что Очевидно, что jQuery не работает с этим способом. Вместо этого я вместо #backTop.

+0

Спасибо Максиму!Чтобы быть совершенно честным, это первый раз, когда у меня есть руки с javascript! Я вижу, что ваше решение работает, но теперь эффект fade in/out исчез. :( У меня нет ни малейшего понятия, как получить свое решение в моем скрипте! Слишком много для меня, чтобы собрать два сценария ... извините! Есть ли вероятность, что вы можете добавить скрипт к моему скрипту, пожалуйста? – user2899161

+0

Нет проблем, я обновил jsfiddle, так что он работает так, как вы хотите. Надеюсь, это поможет на этот раз. –

+0

Я пробовал ваше решение, но и здесь кнопка бежит в нижний колонтитул страницы. :(Но спасибо в любом случае за усилие! – user2899161

1

В вашей скрипке вы используете $(window).load(function() и здесь вы используете $(function(). Это не сработает с первым.

Также в этой строке $('#back-top').) внизу вашего кода ничего не делается. Удалите это, и все должно работать нормально.

Обновлено скрипку с http://jsfiddle.net/dJfpC/

(я также скрывала кнопку прокрутки, так что это не исчезать, когда страница первые грузы).

+0

Спасибо Крису! Его работы. Тем не менее у меня есть проблема, что кнопка прокручивается в нижний колонтитул! В скрипке «Бесстыдно украден из переполнения стека». Предполагается, что это нижний колонтитул ... и кнопка запускается в нее! Любые предложения по этой проблеме? – user2899161

+0

yeap, проверьте первый ответ. :) –

+0

@ user2899161 Прошу прощения, я не правильно прочитал ваш вопрос. Похоже, вы уже решили свою проблему. Если нет, то это обновленное решение, которое вы можете попробовать: http://jsfiddle.net/djGrZ/ (не будет работать в jsfiddle, но должно работать нормально локально). –

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