微信内置浏览器对于html5的支持

来源: 作者: 热度:102 日期:14-06-10, 09:10 AM

我在做针对微信的HTML5应用, 目前遇到的几个问题是

一. 安卓版微信直接调用系统浏览器内核, iOS则是调用safari, 所以要使用新特性, 只能升级系统了, 对于很多老系统, 新的特性是没法用的, 就连基本的canvas, toDataURL 在4.4 以下是不能导出 image/jpeg 格式的, 直接导出的 png格式, 往往非常大, 好几百K,

二. localStorage等, 是可以用, 但是据说有微信退出之后就被清空的问题.

三. 据 Sencha 项目的调研显示, 目前最适合 HTML5 项目的是 iOS 平台,我亲测, 确实如此, 比如一个基本的css3 transition转换做的图片轮播, iOS上和原生应用基本没啥区别, 安卓上则是卡的出奇, 而且安卓在进行一些复杂计算的时候,往往很慢, 比如涉及canvas计算的操作

四. 不好调试, 安卓上的调试, 我是装chrome beta 32版 app, 然后结合桌面chrome通过 USB 开启远程调试, 但是由于两者的 webkit 版本不同, 调试的结果往往不能作为最终参考依据. 说实话有时候有问题只能靠猜了(看你基本功扎实与否, 对css盒模型理解的彻底与否, 对js 的开发理解的深入与否,都能很大程度上提升你"猜对"的几率, 当然, 你最好祈祷你的人品值是够用的, 否则一弄一上午时间真的不算什么), 别忘了 try catch 和 alert, 你会发现你现在真的是爱上它们了... 安卓上的另一种调试方式是通过 ADB 过滤控制台日志的方式, 可以追踪程序错误, 这个有些复杂,我还没试过. iOS 也是可以通过 safari进行远程调试的, 前提是你需要在MAC上进行操作, 我没有MAC, 没试过.

五. 对于开发, 优雅降级与渐进增强将会是个很好的理念, 你 可以 try { 先进API} catch(e) { 老旧的实现方式} 这种方式, 确保在别人刷机到新ROM之后就还能用旧版实现方式,(事实上我没有搞, 真是复杂,很累了每天, 埋了颗雷, 我的4.1 在4.4将会爆掉, 别告诉我老板...)

六. 用百度目前可能还得不到很多有用的信息, 国内目前HTML5还处于炒概念的阶段, 很少有人做一些实打实的事情, 别告诉我谁用了什么API做了什么花出来了, 那些API都明摆在那里, 稍微有点编程常识的都能拿来用, 关键是一个实现, 其实是 一个API ,外加你要修复9个bug, 这种方式来完成的, 只懂那一个 API, 是不够的,现在.

七. 你的程序运行速度与你脚本和css3使用量成反比, 与网速成正比. 所以, 少用脚本, 简化逻辑, 慎用css3, 压缩图片, 代码, 等等, 这些仍然很重要.

八. 你会渐渐发现, 你进入了另一个 ie6 的世界, 移动开发基本是webkit 的天下, 比如我现在, 就没考虑过 wp, 当然, 这也是基于公司的要求来的.

九. 有的人把 HTML5 理解为几个 背景渐变的圆角阴影按钮, 如果真是这样认为的话, 那他现在就可以开始开发了, 这些基本的支持, 还是有了的.

微信内置浏览器对于html5的支持的更多相关文章

  1. 微信内置浏览器不支持APK附件下载的原因

    由于微信的限制,应用文件在内置浏览器中下载全部被屏蔽掉,造成很多人用微信扫描二维码下载时点击下载按钮没反应,我想到的是做一个提示用户在浏览器中打开下载.其实原来很简单,就是判断当前是在微信内置浏览器中 ...

  2. 微信内置浏览器不支持 onclick 如何解决?(原因是因为内面中的内容或者标签大部分是动态生成的)

    使用了很多onclick事件,但是在Android的微信内置浏览器中,onclick是不能被执行的. 开始的写法是: // $(".contentPic").click(funct ...

  3. 微信内置浏览器的JS API

    /**! * 微信内置浏览器的Javascript API,功能包括: * * 1.分享到微信朋友圈 * 2.分享给微信好友 * 3.分享到腾讯微博 * 4.新的分享接口,包含朋友圈.好友.微博的分享 ...

  4. 微信内置浏览器WebApp开发,踩坑 · Issue #31 · maxzhang/maxzhang.github.com · GitHub

    最近花6天时间完成了一个七夕的小活动,是一个简单的WebApp.由于我前期对面向微信的Web开发评估不足,导致开发过程十分艰难.写这篇文章总结下,惊醒自己未来不要再犯这样的错误. 问题: 1. 有些比 ...

  5. 微信内置浏览器的JsAPI(WeixinJSBridge续)[转载]

    原文地址:  http://www.baidufe.com/item/f07a3be0b23b4c9606bb.html 之前有写过几篇关于微信内置浏览器(WebView)中特有的Javascript ...

  6. 微信内置浏览器的JsAPI(WeixinJSBridge续)_Alien的笔记

    微信内置浏览器的JsAPI(WeixinJSBridge续)_Alien的笔记 微信内置浏览器的JsAPI(WeixinJSBridge续)进入全屏 之前有写过几篇关于微信内置浏览器(WebView) ...

  7. 2017年05月10日记一次微项目投产 | 安卓版微信内置浏览器不能解析gzip压缩过的mp4视频的问题

    前言 今天投产了一个小项目,一个很简单的H5,有播放视频功能,使用了videojs插件. 之前也做过数个视频播放,视频的转压都按照既定流程进行,文件放到FTP后,iphone和安卓机测试下来都没有问题 ...

  8. 让微信内置浏览器兼容clipboard.js 复制粘贴 ios 安卓

    <!--js copy事件--><script type="text/javascript" src="/static/js/clipboard.min ...

  9. 微信内置浏览器的JsAPI(WeixinJSBridge续)进入全屏

    微信内置浏览器的JsAPI(WeixinJSBridge续)进入全屏 之前有写过几篇关于微信内置浏览器(WebView)中特有的Javascript API(Javascript Interface) ...

随机推荐

  1. 《和莎莫的 500 天》中为什么 Summer 最终没有和 Tom 在一起?

    好的电影总是需要仔细赏味几次,每次也都会有不同的收获.就像我钟爱的[500 days of summer]. 彪悍的大胡子导演MarcWebb实在是太有趣,把自己的亲身经历搬上大荧幕,因为" ...

  2. HDU——算法练习1000 1089-1096

    全篇都是讲数字之间的运算的: 由上自下难度逐渐升级 ,没耐心者建议一拉到底: 1000: Problem Description Calculate A + B.   Input Each line ...

  3. Git私服搭建

    Git私服搭建 一.Git服务器搭建方式 GIT是一个分布式版本管理系统,既然是分布那么必定会涉及远程通信,那么GIT是采用什么协议进行远程通信? Git支持的四种通信协议: Local(本地协议) ...

  4. python库常用函数学习

    os.path #返回标准化的绝对路径,基本等同于normpath() os.path.abspath(path) #返回文件名 os.path.basename(path) #返回目录名 os.pa ...

  5. Java设计模式二

    今天谈的是工厂模式,该模式用于封装和对对象的创建,万物皆对象,那么万物又是产品类,如一个水果厂生产三种水果罐头,我们就可以将这三种水果作为产品类,再定义一个接口用来设定对水果罐头的生成方法,在工厂类中 ...

  6. 使用 EOLINKER 进行接口测试的最佳路径 (上)

    本文内容: 测试脚本管理:讲述如何在 EOLINKER 上设计测试项目目录结构. 编写测试脚本:讲述如何在 EOLINKER 上编写接口测试脚本. 测试脚本执行及报告:讲述如何在 EOLINKER 上 ...

  7. 精简TTF字体、FontPruner、汉字字体瘦身(非字蛛)

    20190726更新 标黄部分 网上比应用比较多的 字蛛 http://font-spider.org/ 本文使用了本机安装软件,得到瘦身后的 TTF 字体文件 准备工具: python : 我使用是 ...

  8. 高性能MySQL之锁详解

    一.背景 MySQL里面的锁大致可以分成全局锁.表级锁和行锁三类.数据库锁的设计的初衷是处理并发问题.我们知道多用户共享资源的时候,就有可能会出现并发访问的时候,数据库就需要合理的控制资源的访问规则, ...

  9. NoVNC API 文档翻译

    原文地址:https://github.com/novnc/noVNC/blob/master/docs/API.md 时间:2019-05-21     noVNC API The interfac ...

  10. 什么是容器,什么是Docker?

    此文转载自http://www.cnblogs.com/CloudMan6/p/6751516.html行文时有所改动 什么是容器?什么是Docker? 容器是一种轻量级.可移植.自包含的软件打包技术 ...