作者:任铭基,撰写时间:2019年5月5日
mui提供了两种侧滑导航实现:webview模式和div模式,两种模式各有优劣,适用于不同的场景。
今天我们来说下webview模式
主页面和菜单内容在不同的webview中,两个页面根据内容需求分别组织DOM结构,mui对其DOM结构无特殊要求,故其有如下优点:
(1)菜单内容是单独的webview,故可被多个页面复用;
(2)菜单内容在单独的webview中,菜单区域的滚动不影响主界面,故可使用原生滚动,滚动更为流畅;
另一方面,webview模式也有其缺点:
(1)不支持拖动手势(跟手拖动);
(2)主页面、菜单不同webview实现,因此若需交互(如:点击菜单触发主页面内容变化),需使用自定义事件实现跨webview通讯;
侧滑菜单页面代码:
这里面主要是获取一个主窗体对象,然后好使用MUI的自定义事件来得到index.html 里面的关闭侧滑业务部事件
再看下index.html页面js:
这个里面是首先在mui.plusredy里面对侧滑页面menu进行了预加载的,同时,获取menu.html窗体对象给开始定义的menu,然后对menu进行操作,设置width zindex bounce 。其中 zindex的值要小于0,为什么呢,当你创建的时候子页面的zindex一般都是0,除非你创建子页面的时候去进行设置了的。这点可以参见社区里面的说法。然后就是index.html窗体对象给main,同上,设定main的属性。然后就是打开侧滑和关闭侧滑的业务了。注意哦,你要实现在展开侧滑后,右边的蒙版区域进行点击关闭就得在main获取到主窗体对象后进行makclick事件监听,这个是对你在menu和main里进行的蒙版进行的蒙版区域的点击事件监听。
mui提供了两种侧滑导航实现:webview模式和div模式,两种模式各有优劣,适用于不同的场景。
今天我们来说下webview模式
主页面和菜单内容在不同的webview中,两个页面根据内容需求分别组织DOM结构,mui对其DOM结构无特殊要求,故其有如下优点:
(1)菜单内容是单独的webview,故可被多个页面复用;
(2)菜单内容在单独的webview中,菜单区域的滚动不影响主界面,故可使用原生滚动,滚动更为流畅;
另一方面,webview模式也有其缺点:
(1)不支持拖动手势(跟手拖动);
(2)主页面、菜单不同webview实现,因此若需交互(如:点击菜单触发主页面内容变化),需使用自定义事件实现跨webview通讯;
侧滑菜单页面代码:
这里面主要是获取一个主窗体对象,然后好使用MUI的自定义事件来得到index.html 里面的关闭侧滑业务部事件
再看下index.html页面js:
这个里面是首先在mui.plusredy里面对侧滑页面menu进行了预加载的,同时,获取menu.html窗体对象给开始定义的menu,然后对menu进行操作,设置width zindex bounce 。其中 zindex的值要小于0,为什么呢,当你创建的时候子页面的zindex一般都是0,除非你创建子页面的时候去进行设置了的。这点可以参见社区里面的说法。然后就是index.html窗体对象给main,同上,设定main的属性。然后就是打开侧滑和关闭侧滑的业务了。注意哦,你要实现在展开侧滑后,右边的蒙版区域进行点击关闭就得在main获取到主窗体对象后进行makclick事件监听,这个是对你在menu和main里进行的蒙版进行的蒙版区域的点击事件监听。