2013-12-17 1 views
1

У меня проблемы с моим jQuery, и я искал некоторые решения, чтобы добавить что-то к моей уже существующей функции slideDown.Могу ли я использовать scrollTop без написания функции?

То, что выглядело очень интересно для меня этот вопрос/ответ от 2010 http://stackoverflow.com/questions/4034659/is-it-possible-to-animate-scrollop-with-jquery

Отличие этого вопроса является то, что я ищу решения scrollTop каждый раз к другому <a> anchor.

В моем примере ниже, <a href"#"> должен двигаться вверх.

Возможно ли это?

HTML

<div class="next_btn" id="next_btn_show_step_3"> 
    <a href="#"><?php echo $lang ['next']; ?></a> 
</div> 
<article class="order_form_step_3" id="banner_step_3"> 
</article> 

JQuery

$(document).ready(function(){ 
    $("#banner_step_3").hide(); 

    $("#next_btn_show_step_3").click(function(e){ 
    $("#banner_step_3").slideDown(500); 
    e.preventDefault(); 
    }); 
}); 

ответ

2

Вы можете легко адаптировать этот ответ так:

$("html, body").animate({ scrollTop: Math.floor($('#yourElement').offset().top) + "px" }); 
+0

Большое спасибо, я просто попробовал, и он отлично работает! +1, так как я борюсь с этим почти два дня ... – Teo

+0

Это не объясняет, как добавить к существующей функции «slideDown», чтобы прокрутить к другому «привязку», когда каждый щелкнут, как задан вопрос с OPs, только как для прокрутки до одного элемента с помощью 'id'. – FiLeVeR10

0

JQuery

$('.next_btn a').on('click', function(e) {//on link click 
    var th = $(this);//get element 
    th.parent().next('article').slideDown(500);//slide down 
    $('html, body').animate({ scrollTop: th.offset().top }, 500);//scrollto link 
    e.preventDefault();//prevent default 
}); 
Смежные вопросы