我正在我的仪表板 Web 应用程序中使用 angularjs infinite 滚动。我有一个页面包含多个无限滚动小部件。由于我想为每个小部件都拥有无限滚动,所以我决定使用这个指令,但不知何故它的工作效果并不如预期。我希望无限滚动相对于内部内容 div 滚动条进行工作,该滚动条使用 perfect scrollbar 而不是主浏览器窗口。我在谷歌上搜索并找到了多个线程,解释了可以使用的两个新变量来更改默认行为: infinite-scroll-container 和 infinite-scroll-parent。我尝试了两者,但它们都没有为我工作。我认为 perfect-scrollbar 的使用正在创建问题。
Jade 代码:
.hor-col(ng-repeat="stream in socialStreams")
.box-body(style='min-height: 400px;')
perfect-scrollbar.timeline-scroller(wheel-propagation="true" wheel-speed="1" min-scrollbar-length="8" suppressScrollX="true" id="streamScroll-{{$index}}")
div(infinite-scroll="loadMorePosts(stream['streamId'], stream['endCursor'])", infinite-scroll-disabled="stream['infiniteScrollDisabled']", infinite-scroll-container="'#streamScroll-{{$index}}'")
由于有多个小部件,我不能为infinite-scroll-container使用相同的id或类,因此决定生成动态id。
如何在infinite-scroll-container内注入动态类?
我收到以下错误:
错误:未能执行“Document”的'querySelector': '#streamScroll-{{$index}}'不是一个有效的选择器。
P.S. 我看过以下线程,但没有一个涵盖了我的要求:
https://github.com/sroze/ngInfiniteScroll/issues/57