1

$ .getごとにコンテンツをロードし、javascript-auto-scrollingごとに新しく追加されたデータを「フォロー」します。ここで、ユーザーが「手動でスクロール」する場合に自動スクロールを無効にしたいのですが、次のスクロールから下への関数もJquery .scroll()関数をトリガーするため、itsefが無効になります。

if(self.testelem.hasClass("active")){
    $(document).scrollTop($(document).height());
}

マウスホイールイベントを受信したり、scrollTopが.scroll()関数をトリガーしないようにするにはどうすればよいですか?また、scrollTopが機能している間、ブロックするタイムアウトを設定しようとしましたが、これは優れたソリューションではなく、いくつかの欠点があります。

助言がありますか?

編集: 私の現在のコード:

ボタン#stb(下にスクロール)とクラス.activeを使用して、オフ/オンにします。

$.get("url", function(data){
    //do something          
    if(self.testelem.hasClass("active")){
        $(document).scrollTop($(document).height());
    }
}); 

$(document).scroll(function(){
    jQuery('html,body').queue([]).stop();  //try this
    //$("#stb").parent().removeClass("active");
});

ps:はい、わかっています。非常によく似た質問がいくつかあります。読んだのですが、重要な点が違います。

4

1 に答える 1