kendo-list-view滚动时如何获取滚动事件
How to get scroll event when kendo-list-view scrolls
我正在使用 Angular Kendo Mobile 构建跨平台应用程序。
我有一个使用 "kendo-list-view" 的 Kendo 列表。
<div kendo-list-view >
我想在我的控制器中当用户滚动此列表时获得一个事件。
我还尝试使用纯 angular 代码来获取滚动事件,如下面的问题所述。
Bind class toggle to window scroll event
但在我的例子中没有任何反应,指令中的代码没有被调用。
更新
我的 HTML 列表视图如下:
<kendo-mobile-view id="myListScreen" k-transition="'slide'" k-title="'My List'" k-layout="'default'" ng-controller="myListCtrl">
<kendo-mobile-header >
<kendo-mobile-nav-bar style="background-color: gray">
<kendo-view-title style="color: white"></kendo-view-title>
<kendo-mobile-button k-rel="'drawer'" href="#navDrawer" k-align="'left'"><img src="img/menu.png"></kendo-mobile-button>
</kendo-mobile-nav-bar>
</kendo-mobile-header>
<div class="myListMainDiv">
<div kendo-list-view
id="myListViewDiv"
class="myListViewDiv"
k-template="templates.myListViewItem"
k-data-source="myService.listDataSource"
ng-show="showListSelected"
></div>
</div>
<script id="myListViewItem" type="text/x-kendo-template">
<div id="{{dataItem.id}}" ng-click="onSelected(dataItem.id)">
{{dataItem.name}}
</div>
</script>
</kendo-mobile-view>
当用户选择使用 kendo.mobile.application.navigate("MyList.html");
导航到此页面时,我正在我的根页面中加载此页面。当此页面的控制器加载时,我使用 new kendo.data.DataSource
创建了列表,并将 new kendo.data.ObservableArray
附加到我的数据源。
您可以从 Kendo 移动视图的 Scroller
获取滚动事件,
例如,如果您有一个带有 id="myListScreen"
:
的视图
var kendoView = $('#myListScreen').data().kendoMobileView;
var scroller = kendoView.scroller;
scroller.bind("scroll", function(e) {
console.log(e.scrollTop);
console.log(e.scrollLeft);
});
您可以找到有关 kendo 滚动条的更多信息 here on their documentation
我正在使用 Angular Kendo Mobile 构建跨平台应用程序。
我有一个使用 "kendo-list-view" 的 Kendo 列表。
<div kendo-list-view >
我想在我的控制器中当用户滚动此列表时获得一个事件。
我还尝试使用纯 angular 代码来获取滚动事件,如下面的问题所述。
Bind class toggle to window scroll event
但在我的例子中没有任何反应,指令中的代码没有被调用。
更新
我的 HTML 列表视图如下:
<kendo-mobile-view id="myListScreen" k-transition="'slide'" k-title="'My List'" k-layout="'default'" ng-controller="myListCtrl">
<kendo-mobile-header >
<kendo-mobile-nav-bar style="background-color: gray">
<kendo-view-title style="color: white"></kendo-view-title>
<kendo-mobile-button k-rel="'drawer'" href="#navDrawer" k-align="'left'"><img src="img/menu.png"></kendo-mobile-button>
</kendo-mobile-nav-bar>
</kendo-mobile-header>
<div class="myListMainDiv">
<div kendo-list-view
id="myListViewDiv"
class="myListViewDiv"
k-template="templates.myListViewItem"
k-data-source="myService.listDataSource"
ng-show="showListSelected"
></div>
</div>
<script id="myListViewItem" type="text/x-kendo-template">
<div id="{{dataItem.id}}" ng-click="onSelected(dataItem.id)">
{{dataItem.name}}
</div>
</script>
</kendo-mobile-view>
当用户选择使用 kendo.mobile.application.navigate("MyList.html");
导航到此页面时,我正在我的根页面中加载此页面。当此页面的控制器加载时,我使用 new kendo.data.DataSource
创建了列表,并将 new kendo.data.ObservableArray
附加到我的数据源。
您可以从 Kendo 移动视图的 Scroller
获取滚动事件,
例如,如果您有一个带有 id="myListScreen"
:
var kendoView = $('#myListScreen').data().kendoMobileView;
var scroller = kendoView.scroller;
scroller.bind("scroll", function(e) {
console.log(e.scrollTop);
console.log(e.scrollLeft);
});
您可以找到有关 kendo 滚动条的更多信息 here on their documentation