在释放滚动条后滚动网站顶部

时间:2014-06-23 13:31:23

标签: jquery ajax

我正在编写ajax systeme无限卷轴。 它运作良好,我只是有一个我无法解决的最后一个问题。

如果我使用滚动条向下滚动并按住它直到ajax被触发,我的屏幕会显示在顶部

目前我做了一个解决方法,以便屏幕显示我在ajax触发之前的位置(使用var scrollTopSpy),但我不希望显示在顶部,我该如何避免它?

这是我的剧本:

<script type="text/javascript">
                    $(document).ready(function () {

                    var scrollTopSpy;

                        $(document).ajaxStart(function () {
                            scrollTopSpy = $(window).scrollTop();
                            toastr.warning("chargement en cours...");
                            $("body").css("overflow","hidden");
                        }).ajaxStop(function () {
                            $(window).scrollTop(scrollTopSpy);
                            $("body").css("overflow","auto");
                            toastr.success("chargement terminé");
                        });

                    var page = {{ pager.currentPage }};
                    var lastPage = {{ pager.countTotalPage }};

                    $(window).scroll(function () {
                        $('#more').hide();
                        $('#no-more').hide();
                        $(".pages-btns").hide();

                        if($(window).scrollTop() + $(window).height() > $(document).height() - 300) {

                            if (page < lastPage) {  

                                page++;

                                var route = "{{ route("www-place", params|merge({"page":"JSPAGEVAR"})) }}";
                                route = route.replace("JSPAGEVAR", page);

                                $.get( route, function( data ) {
                                    $('.view-list > li:last').after(data);
                                });
                            }
                        }

                    });
                });
                </script>

另一个信息:它不是ajax调用,但是当我退出$(window).scroll函数时(我尝试返回false而没有成功)

这是jsfiddle的简单示例:http://jsfiddle.net/gk6df/

所以:按住滚动条,转到extrem,点击“确定”并查看

0 个答案:

没有答案