html5 子窗口页面,新窗口&子页面

本文介绍了混合App开发中首次制作时的重要步骤,重点讲解了窗口管理和子页面的使用。通过plus.webview.open()和create().show()方法创建并展示新窗口,强调了子页面的独立作用域和传值机制。子页面用于优化布局和提高效率,避免DOM树过深导致的卡顿。同时提到了父子页面间通过evalJS()和extras传递数据的方法,以及在不同场景下的显示优先级和关闭行为。
摘要由CSDN通过智能技术生成

如果是第一次制作混合app的话,我觉得第一个比较重要的事情是打包,把之前写的页面以一个app的方式呈现出来,会是一件非常令人兴奋的事情。

其次比较重要的事情是窗口的概念。

这里有一个教程,窗口一,窗口二,不是我录的……咳咳,其实我也没看。。。。

这个是mui对于窗口的解释:mui窗口;

首先,打开新页面,好几种方式;

使用a连接的href属性,官方不推荐,我也没有研究

使用plus.webview.open() 简单的open新窗口

使用plus.webview.create().show(),经检验,这个方法最靠谱,兼容性很高,在安卓4.4以下可以完美兼容,而且可以定义extras//额外扩展参数

最后,子页面。

其实子页面是一个非常有意思的东西。

普通的html中div可以随意的定位和更改显示层级,js也可以随意的更改这个页面的数据和dom。其实,只使用普通的html制作混合app也是可以的

然后,子页面可以理解为一个普通页面的普通div。只是这个div很特别,它是一个自治区,父界面的话(js,css)它听或者不听,完全看它自己的心情。甚至父页面出现滚动条,子页面也不一定随着滚动条滚动。如果之前学习过vue的话,他的子组件的概念和子页面的概念是非常像的。

为什么使用子页面,效率和布局。

效率,官方解释说,某个html的dom树过深的话,会引发卡顿。切割为不同的子页面会更好,我没有测试过,不知道具体的数值,不过应该是真的,但是效率绝对不会低太多,现在手机的cpu我觉得还是可以的。

布局,现在版本的H5 ,优化的还是比较好的。对于布局挺好的。这个地方需要讲的东西太多,说了也没用。太杂了。

声明子页面:plus.webview.getWebviewById().append(plus.webview.create());

需要特别注意的地方:

作用域:子页面拥有独立的作用域。这个好理解,都已经是html级别了,当然有自己的作用域

传值:父子页面间的传值可以通过plus.webview.getWebviewById().evalJS();或者在子页面创建的时候,定义extras属性,后期可以直接当作dom自定义属性点出来。

归属权:父页面关闭的时候,子页面跟着关闭。其余的事情包括show,close,hide,setStyle,都是自己玩自己的。

获取当前页面: plus.webview.currentWebview();在安卓4.4,及以下,这个属性显示的是当前正在显示的页面,在其余版本,获取的是本身所在的html

显示级别:子页面的显示优先级永远高于父页面本身的dom的优先级。//上帝视角?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值