未通过滑动触发onsen ui后关闭
onsen-ui postclose not triggered with swiping
HTML:
<ons-sliding-menu
main-page="page1.html"
menu-page="sidemenu.html"
side="left"
max-slide-distance="250px"
var="sidemenu"
type="reveal"
swipe-target-width="40px">
</ons-sliding-menu>
JS:
sidemenu.on('postclose', function() {
$scope.show_y = false;
$scope.show_x = true;
});
当用户滑动菜单关闭时,postclose
功能不会被触发,
不过点击操作很好。。。。
请提供建议?
更新---
$scope.$watch(function($scope) { return $scope.sidemenu.isMenuOpened(); },
function() {
alert('hi');
});
即使是CCD_ 2也不会被侧菜单上的滑动事件触发。
我开始了一个新项目,使用了一个基本的侧菜单和角度指令,没有更改,也没有记录错误。
javascript中的ons-sliding-menu
元素对象是$scope.sidemenu
,而不是sidemenu
,请尝试修改它,看看它是否有效。
如果它仍然不起作用,可能是因为:
- 控制器没有在HTML中正确声明(例如:没有覆盖声明滑动菜单的代码部分)
- 创建
ons-sliding-menu
侦听器的代码从未执行过,因此该侦听器不存在
编辑
这是我在我的一个应用中实现的一个例子
app.controller('SlidingMenuController', function($scope){
$scope.checkSlidingMenuStatus = function(){
$scope.slidingMenu.on('postclose', function(){
$scope.slidingMenu.setSwipeable(false);
});
$scope.slidingMenu.on('postopen', function(){
$scope.slidingMenu.setSwipeable(true);
});
};
$scope.checkSlidingMenuStatus();
});
希望它能帮助
您需要对要由角度消化的变量变化使用$evalAsync
sidemenu.on('preopen', function() {
$scope.$evalAsync( function() {
$scope.sm_main_cover = true;
});
});
相关文章:
- 在选项卡中使用时,Onsen UI拉钩会抛出错误
- Onsen UI在点击时显示一个日期选择器
- Onsen UI-删除新页面上的选项卡
- 未通过滑动触发onsen ui后关闭
- onsen ui:访问ons对话框's父页中的DOM元素
- JS不适用于Monaca(Onsen ui)
- Onsen ui:ons按钮提交dos'Don’不要提交表格
- 带错误的Onsen UI导航:您不能提供no"ons页”;元素到“;ons导航器”;当返回第一页时
- Onsen UI+可排序列表(拖放)
- 使用ajax加载onsen ui内容
- 使onsen ui滑动菜单滚动到顶部
- Onsen uI:控制android后退按钮路线:
- 如何在Onsen UI (angularjs)中更新数据
- Onsen UI - 'Android 4.1事件不触发'Event工作正常
- 我如何推或更换页面内的导航器Onsen UI
- Onsen UI模态在angularjs中是不隐藏的
- 弹出窗口在angularjs的onsen UI中不起作用
- NavigatorView's的页面堆栈是空的,返回到主页Onsen UI
- 将图片设置为Onsen UI Master-Details元素
- 使用ONSEN UI + Angular上传个人资料照片