ios 或者 android 浏览器上有没有什么特别的坑,需要用特别的方法来填补的

2015-09-03 22:36:14 +08:00
 Ricoo

最近做微信上网站开发时,时常会出现 ios 或 android 上一些样式或者 js 方法不能用的,大家有没有遇到类似的情况可以分享下,就我个人遇到的,有以下两种。

1 、 js 的 event.preventDefault ()方法不能禁止 ios 上长按图片出现保存图片选项的情况,也是今天在 V2EX 上找到解决方案的,通过设置-webkit-touch-callout:none 解决,感谢 @nealv2ex 。

2 、微信接口,调用图片选择接口时,返回一个 localId ,上传的时候, ios 会出现问题,上传不成功,需要先 localId=localId.toString (),才能上传成功

3 、微信上把图片选择接口获取到的 localId 赋值给 img 的 src 时,在 ios 上会变成全部是小写字母(wxLocalResource... => wxlocalresource ),这时候如果获取 img 的 src 来调用微信的上传图片接口时也会出现错误。

3991 次点击
所在节点    JavaScript
9 条回复
ljbha007
2015-09-03 22:59:22 +08:00
iOS 上不准用第三方的浏览器引擎 所以都只能用苹果阉割版的 webkit 很蛋疼
Mozilla 因为这个原因停止发布 iOS 版的 firefox
drakeet
2015-09-03 23:41:30 +08:00
@ljbha007 那 Chrome 怎么搞的?
ljcarsenal
2015-09-03 23:45:28 +08:00
ios input 输入框 获取焦点之后 如果你不手动点击键盘右上角的完成按钮,晃动手机 会出现 撤销键入。即使你把 input 从 dom 里面删除还是会出现
wxt2005
2015-09-03 23:50:14 +08:00
@ljbha007 必须感谢这一点,否则企鹅立马用上自家的 X5 引擎了。 Android 上已经被这 X5 恶心死了。
ljbha007
2015-09-04 01:08:37 +08:00
@drakeet Chrome 就是用 WKWebview 包装的
ljbha007
2015-09-04 01:13:06 +08:00
@drakeet 错了是 UIWebView 还没有迁移到 WKWebView 所有 iOS 上第三方浏览器都只能用苹果的这两个类 不然上不了架

但是这两个类都是阉割掉很多功能 并且版本严重落后 iOS 自带的 Safari 的 build
这样 iOS 自带的 Safari 就有了极大的优势 无论是 Js 优化还是渲染优化 都比其他浏览器要做的好得多
好像唯一一个让发布自己渲染引擎的是 Opera
zwo
2015-09-04 09:10:40 +08:00
@ljbha007 iOS 版 Firefox 马上会有的了,现在是 preview 阶段。 https://www.mozilla.org/en-US/firefox/ios/ 相关新闻在官方 blog 中提到。 https://blog.mozilla.org/futurereleases/2015/09/03/firefox-for-ios-now-available-for-preview/
kisnows
2015-09-04 20:06:22 +08:00
@wxt2005 同被 X5 恶心,都查不出来它兼容什么不兼容什么
Ricoo
2015-09-04 20:32:42 +08:00
再补充一条,微信上录音是 amr 格式,用 audio 在 android 的微信上可以播放,在 ios 上不支持,需要在后台用 FFmepg 来转换。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/218135

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX