scrollTop 関数を使用して視差スクロール Web サイトを作成し、scrollTop 関数を Web サイト全体のさまざまなアンカーにバインドしています。
私が抱えている問題は、スクロールがChromeでは非常に途切れたりぎくしゃくしたりすることですが、Firefoxでは何とかうまくいきます。
私のコードは次のとおりです。
$('.recipes').click(function(){
$('html,body').animate({
scrollTop: $(".main1").offset().top
}, 1500);
});
$('.cooking').click(function(){
$('html,body').animate({
scrollTop: $(".main2").offset().top
}, 1500);
});
ウェブサイトのスクロールがぎくしゃくしないように、これを行う別の方法はありますか? 多分私が追加できるイージング関数?
- 編集-
次の関数を削除すると、ジャーキーがなくなるように見えますが、コードに何か問題があるのでしょうか、それとも別の書き方でしょうか?
var startY = $('#container').position().top + $('#container').outerHeight();
$(window).scroll(function(){
checkY();
});
function checkY(){
if( $(window).scrollTop() > startY ){
$('#backToTop, #navigation').fadeIn(600);
}else{
$('#backToTop, #navigation').fadeOut(600);
}
}
checkY();
2回目の編集
$(document).ready(function(){
$('.recipes').click(function(){
$.scrollTo('.main1', 1500)
});
$('.cooking').click(function(){
$.scrollTo('.main2', 1500)
});
$(function () {
$(window).scroll(function () {
if ($(this).scrollTop() > 600) {
$('#backToTop, #navigation').show();
} else {
$('#backToTop, #navigation').hide();
}
});
});
});