如何在AngularJs中实现无限滚动中的后退按钮
How to implement back button in Infinite Scrolling in AngularJs?
我正在用angularjs构建一个应用程序,我已经实现了无限滚动技术,因为我有很多项目要显示,所以这是一个比分页更好的体验,但不好的是,我有它,如果用户点击项目,它会到项目页面,但当他想回去,他将在顶部,他应该继续滚动。这就是我想要完成的,如果他按下后退键,他就可以回到他原来的位置!!
清单项目:<div class="container" id="infinit-container" ng-controller="ArticlesController">
<div id="fixed" when-scrolled="LoadMore()">
<div ng-repeat="article in Articles">
<article-post article="article"></article-post>
</div>
</div>
</div>
这里是when- scrolling指令
app.directive('whenScrolled', function () {
return function (scope, element, attrs) {
$('#fixed').height($(window).height());
var div = element[0];
element.bind('scroll', function () {
if (div.scrollTop + div.offsetHeight >= div.scrollHeight) {
scope.$apply(attrs.whenScrolled);
}
})
}
})
就是控制器
app.controller('ArticlesController', function ($scope, UserService) {
$scope.Articles = [];
var page = 0;
$scope.LoadMore = function () {
UserService.Articles(page)
.success(function (data) {
$scope.Articles.push.apply($scope.Articles, data);
});
page++;
};
$scope.LoadMore();
});
我使用页码,保存页码的地方(我更喜欢sessionStorage)当去看项目的详细信息,当用户回到列表,读取页码和加载页面。
是主页控制器(list)的简单代码
app.controller('ArticlesController', function($scope, UserService) {
$scope.Articles = [];
var page = 0;
$scope.LoadMore = function() {
UserService.Articles(page)
.success(function(data) {
$scope.Articles.push.apply($scope.Articles, data);
});
page++;
}
$scope.LoadArticle = function(articleId) {
sessionStorage.setItem("pageNumber", page);
/// change path to somewhere you want show your article
};
//it will load the page you coming back from
if (sessionStorage["pageNumber"]) {
page = parseInt(sessionStorage["pageNumber"]);
}
LoadMore();
});
由于使用了sessionStorage,如果用户按预期关闭浏览器或页面,它将被删除。
相关文章:
- 如何停止向上滚动<按钮dojoType=“;dijit.form.Button”;type=“;提交”/>在
- 每次单击按钮时水平滚动元素
- 如何用按钮控制文本区域滚动
- 如何在已经有图标的滚动到顶部按钮中添加文本
- 按下后退按钮时,如何保持可滚动区域的滚动位置
- 模式上的后退和前进按钮位于图像库上(可滚动浏览)
- 如何停止两个按钮执行相同的工作?在这种情况下,它们都会滚动到顶部
- 如何在滚动时突出显示菜单按钮 - AngularJs
- 每次我按下按钮时,网站都会向上滚动
- 使用按钮滚动iframe-iPhone
- 从一个按钮滚动到不同的 ID
- jQuery通过向上/向下按钮滚动到下一个元素 - 如何为手动滚动添加处理,否则会混淆这一点
- 单击“返回顶部”按钮(滚动顶部)多次发布
- 不需要使用jQuery按钮滚动
- 主干后退按钮滚动问题
- 如何使关闭按钮滚动与页面
- 使用“下一步”和“上一步”按钮滚动锚标记
- 根据单击的按钮滚动到页面
- 防止左/右按钮滚动页面
- 如何使页面滚动到一个特定的元素时,单击一个按钮?滚动动画,如果可能的话