几种打开页面的方式

1.初始化时创建子页面

2.直接打开新页面

3.预加载页面

1.初始化时创建子页面

1
2
3
4
5
6
7
8
9
10
11
12
13
14
mui.init({
     subpages: [{
         url: your - subpage - url,  //子页面HTML地址,支持本地地址和网络地址
         id: your - subpage - id,  //子页面标志
         styles: {
             top: subpage - top - position,  //子页面顶部位置
             bottom: subpage - bottom - position,  //子页面底部位置
             width: subpage - width,  //子页面宽度,默认为100%
             height: subpage - height,  //子页面高度,默认为100%
             ......
         },
         extras: {}  //额外扩展参数
     }]
});

2.直接打开新页面

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
mui.openWindow({
     url:  new  - page - url,
     id:  new  - page - id,
     styles: {
         top: newpage - top - position,  //新页面顶部位置
         bottom: newage - bottom - position,  //新页面底部位置
         width: newpage - width,  //新页面宽度,默认为100%
         height: newpage - height,  //新页面高度,默认为100%
         ......
     },
     extras: {
         .....  //自定义扩展参数,可以用来处理页面间传值
     }
     show: {
         autoShow:  true //页面loaded事件发生后自动显示,默认为true
         aniShow: animationType,  //页面显示动画,默认为”slide-in-right“;
         duration: animationTime  //页面动画持续时间,Android平台默认100毫秒,iOS平台默认200毫秒;
     },
     waiting: {
         autoShow:  true //自动显示等待框,默认为true
         title:  '正在加载...' //等待对话框上显示的提示内容
         options: {
             width: waiting - dialog - widht,  //等待框背景区域宽度,默认根据内容自动计算合适宽度
             height: waiting - dialog - height,  //等待框背景区域高度,默认根据内容自动计算合适高度
             ......
         }
     }
})

3.预加载页面

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// 方式1
mui.init({
     preloadPages: [{
         url: prelaod - page - url,
         id: preload - page - id,
         styles: {},  //窗口参数
         extras: {},  //自定义扩展参数
         subpages: [{}, {}]  //预加载页面的子页面
     }]
});
// 方式2
var  page = mui.preload({
     url:  new  - page - url,
     id:  new  - page - id,  //默认使用当前页面的url作为id
     styles: {},  //窗口参数
     extras: {}  //自定义扩展参数
});

重要区别:

1.子页面和非子页面

以上三种方式中,2,3打开的页面非子页面,

区别是子页面相当于html中的iframe,而非子页面相当于新开了一个浏览器窗口加载了一个html

2.子页面适用于侧滑菜单

子页面有其有点,特别适用与index.html+list.html这种情况,

如果用index.html(主页面)+list.html(子页面)实现的话,当主页面右滑时子页面会自动跟随,

而用index.html(主页面)+list.html(新页面)实现的话,主页面右滑,新页面不右滑,还得单独处理新页面。

3.子页面实用频繁切换的情况

如果频繁左滑右滑,在配置较低的手机上会出现list.html遮住index.html的情况,

采用子页面模式就不会,采用新页面模式几率很大。

4.子页面适用与下拉刷新和上拉加载

之前做大下拉刷新的时候,采用的是新页面的形式,

按照官网教程,怎么搞都不成功,

后来看了下源码,发现下拉刷新必须采用子页面的形式,

也就是你的list.html必须是index.html的子页面,才可以下拉刷新。

5.新页面适用于新页面

open一个新页面,适用于查看详情之类的,需要打开一个新页面的情况,

并且mui自己封装了新页面的back方法,你就不需要去操心了。

6.预加载页面的两种方式

第一种是在初始化的时候预加载,

这种情况适合在你这个页面在很久之后才会用,

如果你要立即到的页面并使用,那么你会得到null。

第二种方式类似与open,

个人感觉没有什么太大的区别,

唯一的区别是open就直接打开了,

preload只是加载,你可以之后选择打开的时机。

总结

需要下拉刷新上拉加载请使用子页面,

需要打开一个新页面请使用新页面方式,

需要加载一个页面但是暂时不使用请使用预加载方式。

MUI-几种页面打开方式相关推荐

  1. mui几种页面跳转方式对比

    mui几种页面跳转方式对比 http://blog.csdn.net/uikoo9/article/details/44676963 [几种打开页面的方式] 1.初始化时创建子页面 2.直接打开新页面 ...

  2. 数据库管理软件 SQL Server 的安装包、安装教程、页面打开方式及服务器名称输入方法

    sql server 安装包的下载地址 链接:https://pan.baidu.com/s/1-02821i6P-_sZzw868Y_Hw 提取码:k87d sql server 安装包的安装步骤 ...

  3. Serverless的4种错误打开方式

    作者 | Sarjeel Yusuf 自 2014 年 AWS 发布 Lambda 以来,Serverless 技术的采用率逐年上升.这是因为 Serverless 提供了云服务开发人员无法抗拒的产品 ...

  4. SPA优缺点、解决单页面应用的SEO困难问题以及三种网页渲染方式

    SPA特点优点缺点总结 1. 单页Web应用(SPA - Single Page web Application) 也就是说只有一个HTML文件的Web应用, 我们就称之为单页Web应用, 就称之为S ...

  5. android动态设置错误页面,Android缺省页的正确打开方式(优雅的处理loading、error、empty...

    Android缺省页的正确打开方式(优雅的处理loading.error.empty Android缺省页的正确打开方式(优雅的处理loading.error.empty各种状态缺省) MultiSt ...

  6. 【微信小程序】小程序中几种跳转页面的方式

    本期内容 本期将介绍小程序中,几种跳转页面的方式以及区别 目录 1.只能跳转到 tabBar 配置页面 2.返回上一级页面( delta:返回的页面数,默认值为 1,若 delta 大于现有页面数,则 ...

  7. js怎么打开一个html文件怎么打开方式,JavaScript实现打开链接页面的方式汇总

    在页面中的链接除了常规的方式以外,如果使用javascript,还有很多种方式,下面是一些使用javascript,打开链接的几种方式: 1.使用window的open方法打开链接,这里可是在制定页面 ...

  8. windows启动管理器_win7系统任务管理器的五种打开方式,很实用,学习一下

    xp系统如何启动任务管理器,很简单吧,ctrl键+alt键+delete键,直接可以启动任务管理器,可是当你在win7操作系统按下ctrl键+alt键+delete键,是无法直接调用任务管理器的,接下 ...

  9. DB扩展名的数据库文件怎么打开:两种db数据库的打开方式

    两种db数据库的打开方式 现在桌面级的各种管理系统使用的数据库都是比较常见的类型,比如Access数据库(扩展名为mdb).xBase类数据库(扩展名为dbf),但有两种扩展名同为db的数据库,分属两 ...

最新文章

  1. asp.net提交危险字符处理方法之一
  2. SQL Server-流程控制 5,Goto 语句
  3. 风险项目投资选择与管理
  4. [css] 说说display:none和visibility:hidden的区别
  5. linux go 安装路径,在Alpine Linux D的路径中找不到已安装的Go二进制文件
  6. python怎么写运维脚本_python运维脚本实例
  7. james邮件服务器的用户信息添加
  8. 广度(宽度)优先搜索思路总结
  9. 视频码率、分辨率、帧率的关系
  10. 截止失真放大电路_技术分享:音频功放失真及常见改善方法
  11. hone hone clock 与小松鼠驾到~还有牛顿摆等一些其他好玩的东西
  12. linux硬盘分区的几种方式,硬盘分区的三种方式
  13. WireShark抓Intel网卡的802.1q包
  14. unity3d 重力加速度传感器控制摄像头
  15. Android Camera旋转角度
  16. win7电脑开不了机,CPU风扇转一下,停一下
  17. 手机电视的概念及其发展状况
  18. SAP中物料报废无法确定账户问题处理实例
  19. 米家骑记电助力折叠自行车,看看里面的电子方案
  20. 微型计算机可以用于,微型计算机控制技术选择题..docx

热门文章

  1. flask路由规则及正则转换器converter
  2. Oracle 11g中的IO Calibrate(IO校准)--Automatic Degree of Parallelism(DOP)
  3. KiWi 测试平台--试用篇
  4. 基于aspnet汽修系统仓库管理系统#毕业设计#课程设计
  5. 2018 英语作文二
  6. 【全栈】vue3.0 + golang 尝试前后端分离【博客系统1.0】开发
  7. php获取下拉菜单多选值,PHP 下拉菜单多选
  8. Unity使用Button组件实现多选
  9. 高并发的一些处理方法
  10. 零散的JavaScript知识