0

animate() を使用してページを一番上にスクロールする次の JQuery があります。

$(document).ready(function(){
    $(window).scroll(function() {
        if($(this).scrollTop() != 0) {
            $('#toTop').fadeIn();   
        } else {
            $('#toTop').fadeOut();
        }
    });

    $('#toTop').click(function() {
        $('body,html').animate({scrollTop:0},800);
    });
});

ページをスクロールするために機能する私のHTMLは次のとおりです。

<div class="gototop" id="toTop"></div>

しかし、私が抱えている問題は、1 つしか使用しない場合、HTML コードが機能することです。それらが複数ある場合、どれも機能しません。

4

2 に答える 2

1

IDs は一意である必要があります。コピーして貼り付ける<div class="gototop" id="toTop"></div>と、1 つの ID が複数回表示されると思いますが、これはエラーです。

ID 属性を完全<div class="gototop" id="toTop"></div>にスキップして、jQuery を次のように変更します。$('.gototop').click(function()

于 2013-05-28T13:52:16.937 に答える
1

複数<div class="gototop" id="toTop"></div>だとダメってことですか?

id="toTop"コードのように、同じ ID を持つ複数の div を使用しないでください。次のような div の束を使用して<div class="gototop"></div>、jquery を次のように変更できます。

$(document).ready(function(){
$(window).scroll(function() {
    if($(this).scrollTop() != 0) {
        $('.gototop').fadeIn();   
    } else {
        $('.gototop').fadeOut();
    }
});

$('.gototop').click(function() {
    $('body,html').animate({scrollTop:0},800);
});
});
于 2013-05-28T13:51:40.787 に答える