Angular Infinite Scroll:body 上的滚动条不在 div 上
Posted
技术标签:
【中文标题】Angular Infinite Scroll:body 上的滚动条不在 div 上【英文标题】:Angular Infinite Scroll: scroll bar on body not on div 【发布时间】:2016-09-24 01:15:16 【问题描述】:我使用 angularjs 在我的网络应用程序中实现无限滚动。我在网络Infinite Scroll 上找到了这个有用的指令,但问题是这只能在 div 内部实现,不能在滚动条主体中实现:
app.directive('infinityscroll', function ()
return
restrict: 'A',
link: function (scope, element, attrs)
element.bind('scroll', function ()
if ((element[0].scrollTop + element[0].offsetHeight) == element[0].scrollHeight)
//scroll reach to end
scope.$apply(attrs.infinityscroll)
);
);
这是我的 html 代码:
<div infinityscroll="NextPage()" style="height:700px; overflow:auto;" >
<div ng-repeat="item in listItems">
<img ng-src="item.picture" style="">
</div>
</div>
当我删除内联 css 时它不起作用。那么我怎样才能更改 body 中的无限滚动而不是 div?
【问题讨论】:
如果我没记错的话,内联样式是在它应该获取下一组数据(连续页面)时通知无限滚动。你想在身体水平上定义那个高度吗?? 我不想使用 div 滚动条。我需要使用 body 上的滚动条,它是浏览器中的主要滚动条。 我在某处看到它有效,如果没有,它会改变你的 css 样式: html,body height: 100%;溢出-x:隐藏; 并添加无限滚动容器="'body'" 【参考方案1】:试试这个:
<body infinityscroll="NextPage()" style="height: 1000px; overflow:auto;">
并从您的 div 中删除无限滚动初始化。
您可能需要根据您的屏幕尺寸稍微调整高度。 希望这能解决您的问题.. :)
【讨论】:
对不起,我之前试过但它不起作用..还是谢谢你。 ;)以上是关于Angular Infinite Scroll:body 上的滚动条不在 div 上的主要内容,如果未能解决你的问题,请参考以下文章
与 Ionic2 中的 ion-infinite-scroll 相关
ion-infinite-scroll 向上滚动时触发 - Ionic
Reactreact-infinite-scroll-component 实现滚动加载
“react-infinite-scroll-component” 一次调用后停止工作(loadMore 只被调用一次)