Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将内部Div滚动回原始位置,而不是页面本身?_Javascript_Jquery_Html_Css_Dom - Fatal编程技术网

Javascript 将内部Div滚动回原始位置,而不是页面本身?

Javascript 将内部Div滚动回原始位置,而不是页面本身?,javascript,jquery,html,css,dom,Javascript,Jquery,Html,Css,Dom,我尝试了下面的脚本,Neal在 (顺便说一句,好极了)。它非常适合我的需要,但是,如果它们从下到上滚动,你怎么能扭转效果呢?这样,当使用窗口滚动条向上滚动时,它会将内部div滚动回其原始位置。任何提示都很好。多谢各位 var last_scroll = -1; $(window).scroll(function(e){ if($('#content').scrollTop()); var scroll = $('#view').data('scroll'); if(sc

我尝试了下面的脚本,Neal在 (顺便说一句,好极了)。它非常适合我的需要,但是,如果它们从下到上滚动,你怎么能扭转效果呢?这样,当使用窗口滚动条向上滚动时,它会将内部div滚动回其原始位置。任何提示都很好。多谢各位

var last_scroll = -1;

$(window).scroll(function(e){
    if($('#content').scrollTop());
    var scroll = $('#view').data('scroll');
    if(scroll == undefined){
        $('#content').data('scroll', 5);
        scroll = $('#content').data('scroll');
    } else {
        $('#content').data('scroll', scroll + 5);
        scroll = $('#view').data('scroll');
    }
    /*
    console.log({
        'window scroll':$('window').scrollTop(), 
        'scroll var': scroll, 
        'view scroll':$('#view').scrollTop(),
        'view height':$('#view').height(),
        'ls': last_scroll 
    });
    //*/
    if(last_scroll != $('#content').scrollTop()){ //check for new scroll
        last_scroll = $('#content').scrollTop()
        $('#content').scrollTop($('#content').scrollTop() + scroll);

        $(this).scrollTop(0);
        //console.log(e, 'scrolling');
    }
})

事实上,做相反的事情有点困难,因为如果窗口scrollTop为0谢谢你的建议dunli,
scroll
将不会被触发。我会继续调查的。我还添加了下面的功能,可以在页面刷新时将滚动条重置回页面顶部$(窗口).on('load',function(){$(“#content,html,body”).animate({scrollTop:0},500);});我还发现上面的刷新功能在chrome版本46.0.2490.80M中不能正常工作。我必须执行浏览器检测,并为仅chrome浏览器添加单独的功能$(document).ready(function(){/$(window).on('load',function(){/$.browser.chrome=/chrom(e | ium)/.test(navigator.userAgent.toLowerCase()){$(window).on('beforeuload',function(){$(window.scrollTop(0)});}else{('content,html,body')。animate({scroll-top:0}), 500); }; //}); });事实上,做相反的事情有点困难,因为如果窗口scrollTop为0谢谢你的建议dunli,
scroll
将不会被触发。我会继续调查的。我还添加了下面的功能,可以在页面刷新时将滚动条重置回页面顶部$(窗口).on('load',function(){$(“#content,html,body”).animate({scrollTop:0},500);});我还发现上面的刷新功能在chrome版本46.0.2490.80M中不能正常工作。我必须执行浏览器检测,并为仅chrome浏览器添加单独的功能$(document).ready(function(){/$(window).on('load',function(){/$.browser.chrome=/chrom(e | ium)/.test(navigator.userAgent.toLowerCase()){$(window).on('beforeuload',function(){$(window.scrollTop(0)});}else{('content,html,body')。animate({scroll-top:0}), 500); }; //}); });