gpt4 book ai didi

javascript - 使onsen-ui滑动菜单滚动到顶部

转载 作者:行者123 更新时间:2023-11-28 16:42:37 29 4
gpt4 key购买 nike

我正在使用 onsen ui 构建一个应用程序并且有一个很长的菜单:

    <ons-template id="menu.html">
<ons-page modifier="menu-page">
<ons-toolbar modifier="transparent"></ons-toolbar>
<ons-list class="menu-list">
<ons-list-item class="menu-item" ng-click="menu.setMainPage('updates.html', {closeMenu: true})">
<ons-icon icon="fa-updates"></ons-icon>Updates</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('about.html', {closeMenu: true})">
<ons-icon icon="fa-about"></ons-icon>About</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('venue.html', {closeMenu: true})">
<ons-icon icon="fa-venue"></ons-icon>Venue</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('agenda.html', {closeMenu: true})">
<ons-icon icon="fa-agenda"></ons-icon>Agenda</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('speakers.html', {closeMenu: true})">
<ons-icon icon="fa-speakers"></ons-icon>Speakers</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('sponsors.html', {closeMenu: true})">
<ons-icon icon="fa-sponsors"></ons-icon>Sponsors</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('resources.html', {closeMenu: true})">
<ons-icon icon="fa-resources"></ons-icon>Resources</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('feedback.html', {closeMenu: true})">
<ons-icon icon="fa-feedback"></ons-icon>Feedback</ons-list-item>
<ons-list-item class="menu-item" ng-click="menu.setMainPage('register.html', {closeMenu: true})">
<ons-icon icon="fa-register"></ons-icon>Register</ons-list-item>
</ons-list>
</ons-page>
</ons-template>

当我在小屏幕上向下滚动菜单时,它会停留在同一位置,不会返回到初始 View 。

菜单代码:

<ons-sliding-menu menu-page="menu.html" main-page="updates.html" side="left" var="menu" type="reveal" max-slide-distance="200px" swipeable="true" ons-postclose="menutotop()"></ons-sliding-menu>

我实现了 ons-postclose="menutotop()" 但它似乎无法与 jQuery 一起使用。

有谁知道如何让它默认关闭后立即滚动回顶部?

最佳答案

首先,创建一个 Angular Controller 并将其添加到 div 元素中,该元素将包裹 ons-sliding-menu 元素。如果你想使用 jQuery,你的代码将是这样的(另见工作 CodePen Example )。

HTML

<div ng-controller="MyController"><ons-sliding-menu  menu-page="menu.html" main-page="updates.html" side="left" var="menu" type="reveal" max-slide-distance="200px" swipeable="true" ons-postclose="menutotop()"></ons-sliding-menu></div>

JS

ons.bootstrap()
.controller('MyController', function($scope) {
$scope.menutotop = function() {
$('.page__content').animate({
scrollTop: $('.ons-list-inner').height()
})
.animate({
scrollTop: 0
});
}
});

希望对您有所帮助!

关于javascript - 使onsen-ui滑动菜单滚动到顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33532867/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com