码迷,mamicode.com
首页 > 移动开发 > 详细

程序员也需要下点成本啊!!IOS input渲染 和android不同,以及自动添加拨打电话功能导致的问题

时间:2015-12-15 18:18:21      阅读:1191      评论:0      收藏:0      [点我收藏+]

标签:

前几天公众号做完了给领导审查,因为这个公众号是在之前的1.0基础上开发的,所以没有在意兼容性问题[其实是忽略了IOS=。=原谅我的无知]

结果出问题了,有几个问题:

1. input渲染效果和andriod下不同

2. 长串数字会被渲染成电话号码

3.四位小数被渲染成超链接

 

1.input

Android下设置没有圆角。无渐变,文字居中显示,完全没问题啊技术分享

到了IOS就变成这个鸟样子了!!这是什么鬼啊??技术分享

原来iPhone上的safari解析input[type="submit"]和input[type="reset"]等按钮会以苹果浏览器的默认UI渲染。

OK,禁用掉就行了:

input[type="submit"], input[type="reset"], input[type="button"], button { -webkit-appearance: none;}

 

2.长串数字

然后遇到了第二个坑爹的东西 IOS会将长串数字识别为电话号码,还调用通讯录

我的部分代码是这样的

    <div class="name">表名<%= name%></div>
  <div class = "num">表号: 
    <span><%=Address%></span>
    <span><%= number %></span>
  </div>

我想要获取num值 于是写了:

$(".num").children("span").eq(1).html()

然后我发现给了我一大堆乱七八糟的代码 大概意思就是IOS将这串数字渲染成了电话号码 并且添加了新的span节点在这串数字前面,因为我是用的eq(),所以悲剧了。。

解决办法当然还是禁用拨打电话功能

<meta name="format-detection" content="telephone=no" />

 如果需要拨打电话,就这么写

<a href="tel:15600000000">15600000000</a>

 

3.四位小数

第三个问题技术分享大概就是这样,我当时并没有找到好方法,而是直接取两位小数[因为这个是以前别人写的,估计也没有测试兼容性,而且四位小数的RMB什么鬼?]。所以没有试第二个问题的解决办法能不能解决这个问题。如果有人看到了并且知道正确的解决方法,请告诉我。。感谢!

 

其实我以前在看一本书的时候看到过一段话:

由于IOS模拟器只运行在Mac上,如果你使用Windows操作系统,那么最好也是唯一的选择就是购买iPhone来测试。

说的好像很有道理,我竟无言以对。。。

其实上面那些问题我在调试的时候都是借了同事一个不用的iphone来调试的啊!!!!

所以我难道要考虑入手一个iPhone了么? QAQ

 

 

还好有模拟器

程序员也需要下点成本啊!!IOS input渲染 和android不同,以及自动添加拨打电话功能导致的问题

标签:

原文地址:http://www.cnblogs.com/timerain/p/5048820.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!