利用 MUI开发app, 如何实现侧滑菜单及其主体部分上下滑动
2024-10-13 21:33:34
利用mui开发APP
之侧滑菜单主内容滚动问题
MUI作为开发者常用的框架之一,其号称最接近原生APP体验的高性能前端框架。因此利用mui开发移动APP,可以为开发者提供很大的便利和接近原生的体验。但是,在实现一些复杂功能的过程中,难免遇到一些小问题。博主将以自己在项目开发中的一些的经验,陆续对mui使用中容易遇到的小问题,予以解答和分享,希望能帮到更多的开发者朋友。
最近,博主在项目开发过程中遇到这样一个问题,即利用mui侧滑菜单模块,实现APP的侧滑菜单效果时,侧滑菜单加入以后,将影响自身及主页面内容的上下滑动。
相信这个问题在用mui开发APP时遇到的人不在少数,已解决,敬请参考。
1、首先在 class="mui-scroll-wrapper" 的元素上添加ID:
代码如下:
<!-- 侧滑导航根容器 -->
<div class="mui-off-canvas-wrap mui-draggable">
<!-- 菜单容器 -->
<aside class="mui-off-canvas-left">
<div id="offCanvasSideScroll" class="mui-scroll-wrapper">
<div class="mui-scroll">
<!-- 菜单具体展示内容 -->
...
</div>
</div>
</aside>
<!-- 主页面容器 -->
<div class="mui-inner-wrap">
<!-- 主页面标题 -->
<header class="mui-bar mui-bar-nav">
<a class="mui-icon mui-action-menu mui-icon-bars mui-pull-left"></a>
<h1 class="mui-title">标题</h1>
</header>
<div id="offCanvasContentScroll" class="mui-content mui-scroll-wrapper">
<div class="mui-scroll">
<!-- 主界面具体展示内容 -->
...
</div>
</div>
</div>
</div>
从上面例子可以看出,侧滑菜单和主体部分都添加了ID。
分别为:offCanvasSideScroll、offCanvasContentScroll。
2、其次在JS里面激活:
注意!这是至关重要的一步操作:
mui('#offCanvasSideScroll').scroll();
mui('#offCanvasContentScroll').scroll();
经过JS的初始化以后,现在超过高度即可进行下滑了。注意是超过高度!就像浏览器一样,如果“ 主界面具体展示内容”没有超出范围,是没有下滑功能的。
完整代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
<title></title>
<script src="http://dev.dcloud.net.cn/mui/dist/js/mui.min.js"></script>
<link href="http://dev.dcloud.net.cn/mui/dist/css/mui.min.css" rel="stylesheet"/>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<style type="text/css">
body{
background-color: #000000;
}
.mui-off-canvas-wrap{
max-width: 720px;
margin: 0 auto;
}
</style>
</head>
<body>
<!-- 侧滑导航根容器 -->
<div class="mui-off-canvas-wrap mui-draggable">
<!-- 菜单容器 -->
<aside class="mui-off-canvas-left">
<div id="offCanvasSideScroll" class="mui-scroll-wrapper">
<div class="mui-scroll">
<!-- 菜单具体展示内容 -->
<div style="height:1000px"> </div>
</div>
</div>
</aside>
<!-- 主页面容器 -->
<div class="mui-inner-wrap">
<!-- 主页面标题 -->
<header class="mui-bar mui-bar-nav">
<a id="left-menu" class="mui-icon mui-action-menu mui-icon-bars mui-pull-left"></a>
<h1 class="mui-title">标题</h1>
</header>
<div id="offCanvasContentScroll" class="mui-content mui-scroll-wrapper">
<div class="mui-scroll">
<!-- 主界面具体展示内容 -->
<div style="height:1000px"> </div>
</div>
</div>
</div>
</div> <script type="text/javascript" charset="utf-8">
$("#left-menu").on('tap', function (event) {
mui('.mui-off-canvas-wrap').offCanvas('show');
}); window.onload = function(){
mui('#offCanvasSideScroll').scroll();
mui('#offCanvasContentScroll').scroll();
}
</script>
</body>
</html>
至此,mui侧滑菜单主页面内容的问题已解决,更多详细内容,敬请关注 Q的前端世界。也可在评论区提出你的遇到的困难或更好建议。
本期分享就到这里,觉得内容不错的小伙伴请点推荐,欢迎大家在评论下方评论区与博主互动,谢谢大家!
最新文章
- Android N开发 你需要知道的一切
- 命令行操作svn和git和git
- Jquery easyui中的有效性检查
- 【转】 Linux Shell 命令--rename
- [老老实实学WCF] 第三篇 在IIS中寄存服务
- 多目标遗传算法 ------ NSGA-II (部分源码解析) 目标函数值计算 eval.c
- ###Android 断点调试和高级调试###
- linux 进程(二) --- 进程的创建及相关api
- IP 网际协议
- Ubuntu安装Java8和Java9
- WPF使用RoutedCommand自己定义命令
- Go-技篇第二 命名规范
- time series analysis
- fork子进程
- ajax、fetch、axios — 请求数据
- 比较python类的两个instance(对象) 是否相等
- Jmeter 自动化测试报告扩展
- Machine Learning in action --LogisticRegession 逻辑回归
- Photoshop做32位带Alpha通道的bmp图片
- vue2.0动态添加组件