2019独角兽企业重金招聘Python工程师标准>>>
先来说一下微信的内置浏览器--qq浏览器x5内核,网上去查了一下它的评价,反正没有看到一篇是说它好的,看看知乎大神的评价,真的是为它默哀啊,
对于此,腾讯的前端还算是蛮有良心的写了一篇--QQ浏览器X5内核问题汇总,哎,真的是想笑笑不出来啊。。。
其实这篇文章中提到的坑还不算什么,下面说一下我在开发中遇到的几个坑吧
1.css3样式大部分都是不支持的,尤其不支持flex。这使得很多前端童鞋对它很不友好,所以我们在开发中,不得不使用-webkit-来兼容它
2.js性能很差。举个例子
window.open('/newPage', '_self')
这句话很好理解,就是在本页内再打开一个新的页面,但是放在微信里面就出事了,什么问题呢?
第一次打开,木有问题,第二次打开,biang~~,页面竟然不跳转了,呵呵
那么咋解决嘞,下面提供几个方案
a.可以用window.history来处理url,但是这只针对已经访问过的url
b.用window.location+window.reload(),在改变url的同时,主动载入一次该页面,但是这样会比较麻烦
c.用react、angular、vue把web应用做成单页的,url做成前端的虚拟url,但是这样就会造成切换时不刷新,那么就需要手动来再求情一次srv
3.动画效果很差。
微信内置浏览器主动对动画效果做了限制,我也不知道是为虾米,可能是因为比较吃内存吧,真的是很无语,所以各位童鞋就不要想在微信里面做些什么骚东西了,安安稳稳地先把功能实现吧
好啦,暂时就先说辣么多,其他的以后发现了再补充吧
另外说一下微信内置浏览器--x5内核,被称为移动端的ie6,所以想要在微信上开发的话,各位心理上先有个准备哦