webview
概念:
webview能在移动应用中开辟出一个窗口,在里面能显示 html页面,css及js代码也可被执行,它使用webkit内核。android与ios都有相应的API。
webviwe调用系统自带的浏览器内核来解析页面。
有的时候浏览器打开一个页面与用webview打开同一个页面得到的结果有不同。
移动设备在渲染时会先虚拟画布上渲染,然后在缩放到设备的尺寸,加上<meta name="viewport" content="width=device-width,initial-scale=1.0"/>来保证页面按照设备的宽进度渲染面不是用虚拟画布。
然后可以用响应式的相关技术:弹性盒子,媒体查询等。如果去了上面的这句就不会进行重绘,
问题与解决方法:
移动闪退:dom元素很多,或层级关系复杂时,压力大。
做横竖屏翻转时,解析引擎会进行页面重绘,
ipad关闭屏幕造成的问题:关闭屏幕后浏览器中的一些线程也会暂时关闭,开启时再开启。对于计时器隔一时间与服务器进行时钟同步可解决。
在ipad的safari浏览器,在切换到别的标签页时,原来 标签中的线程也会被停了。跟关屏一样的效果
webview可以进行重绘或者直接reload;
注意点:
尽量不要用别人的插件:
浙公网安备 33010602011771号