IOS和Android 兼容

简介: IOS和Android 兼容
  1. 日期的兼容性

    安卓和ios转换时间戳的形式

    关于时间的转换,在安卓系统和ios系统是存在兼容性的,也就是说,在安卓手机可以正常显示的时间,在ios系统上面就会出现NaN。

    在安卓系统下,我们可以直接转换:

     Date.parse(new Date('2018-03-30 12:00:00'))
    

    但是在ios系统下,

     Date.parse(new Date('2018-03-30 12:00:00')) // NaN
    

    是无法转换成功的,就会出现NaN这样的兼容性问题。

    那么解决方案就需要将时间转换成如下的格式,ios系统才可以成功转换,Date.parse(new Date('2018/03/30 12:00:00'))。

    如何转换成这种的时间格式:方案如下:

    将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式 var date = '2018-07-25 19:25'; date = date. ;

    封装成函数就是:

     function formatTimeStamp (time) {
         return Date.parse(new Date('2018/03/30 12:00:00')) || Date.parse(new Date('2018-03-30 12:00:00'))
     }
    
  2. input输入框聚焦

    input输入框在聚焦的时候,ios有时候会出现outline或者阴影,安卓则是显示正常的。那么解决方案:

     input:focus {
         outline:none}
     input:{
         -webkit-appearance: none;}
    
  3. ios系统会将数字当成电话号码,导致变色

    解决方法:

    <meta name="format-detection" content="telephone=no">
    <meta http-equiv="x-rim-auto-match" content="none">
    

    对于我们的系统框架来说,已经解决这样一个问题。

  4. input输入框的placeholder

    input输入框的placeholder,也就是输入框的提示性文字。会出现不在输入框的中间位置,导致位置偏上。

    那么移动端的解决方案就是:

    line-height:normal; // 移动端解决方法。
    
  5. input输入框type类型为number的时候

    type类型为number也就是说,输入框输入的是数字,但是会出现上下的箭头。可以将箭头给隐藏掉。

    input::-webkit-outer-spin-button,
    input::-webkit-inner-spin-button {
         
        -webkit-appearance: none !important;
        margin: 0;
    }
    
  6. 安卓手机可以点击图片

    部分的安卓手机可以点击页面的图片,解决方案就是通过css3给img标签设置不可点击属性。

     img{
          pointer-events: none; }
    

    这样的话img标签的点击事件就会失效。由此可见在很多的js判断,无论移动端还是小程序,都可以通过这个属性,来设置标签的不可点击属性。

  7. h5底部输入框被键盘遮挡

    在h5的静态页面会出现一个非常难受的问题,就是当页面出现多个input输入框的时候,导致最下面一个输入框,点击的时候弹出的键盘会遮挡输入框。用户根本不知道自己输入的是什么,对用户的体验非常不友好。解决方案:

    1.就是选中当前的DOM元素,让他出现在可视区域的顶部或者底部。代码如下:

    document.querySelector('#inputId').scrollIntoView();

  8. input标签的常用操作

    1. 清除input标签的默认样式

       input {
              -moz-appearance: none;outline: 0;text-decoration: none; outline: none; border: 0; }
      
    2. input标签属性placeholder样式修改

       input::-webkit-input-placeholder {
              font-size: px2rem(22);color: rgba(136, 136, 136, 1);font-family: Microsoft Yahei; width: px2rem(50); height: px2rem(60); line-height: px2rem(40); }
      
    3. input 点击输入内容后的样式 focus

       input:focus {
              outline: none; -moz-box-shadow: 0 2px 3px 0 rgba(0,0,0,.1) inset, 0 2px 7px 0 rgba(0,0,0,.2); -webkit-box-shadow: 0 2px 3px 0 rgba(0,0,0,.1) inset, 0 2px 7px 0 rgba(0,0,0,.2); box-shadow: 0 2px 3px 0 rgba(0,0,0,.1) inset, 0 2px 7px 0 rgba(0,0,0,.2); }
      
    4. input标签可读不可编辑

      • onfocus=this.blur() 当鼠标放不上就离开焦点

          <input type="text" name="input1" value="中国" onfocus=this.blur()>
        
      • readonly

          <input type="text" name="www.xxx" readonly="readonly" />
          <input type="text" name="input1" value="中国" readonly>
          <input type="text" name="input1" value="中国" readonly="true">
        

        注意: readonly表示此域的值不可修改,仅可与 type="text" 配合使用,可复制,可选择,可以接收焦点,后台会接收到传值

      • disabled

          <input type="text" name="input1" value="中国" disabled="true">
        

        disabled="true" 此果文字会变成灰色,不可编辑,不可点击。

        readOnly="true" 文字不会变色,也是不可编辑的,可点击。

          css屏蔽输入:<input style="ime-mode: disabled">
        
有两种方法第一:disabled="disabled"这样定义之后被禁用的 input 元素既不可用,也不可点击。第二:readonly="readonly" 只读字段是不能修改的。不过,用户仍然可以使用 tab 键切换到该字段,还可以选中或拷贝其文本.

今天在实际开发中遇到一类比较特别的关于IOS的时间比较和取舍问题。其实也就是在IOS上,一般后台给到的数据都是年月日,时分秒都具备的。但是前端页面在显示的时候,有时候没有必要那么的具体,可能就要舍弃时分秒。但是同时也要兼容IOS。所以今天给大家介绍一种非常使用的方法:

var time_register = data.public_user_info.time_register;(后端给的字段显示时间格式)

var time_register1 = time_register.substr(0,10);(把时分秒给去掉,只保留年月日)

var time_register2 = time_register1.replace(/-/g, "-");(兼容IOS)

目录
相关文章
|
14天前
|
IDE 开发工具 Android开发
移动应用开发之旅:探索Android和iOS平台
在这篇文章中,我们将深入探讨移动应用开发的两个主要平台——Android和iOS。我们将了解它们的操作系统、开发环境和工具,并通过代码示例展示如何在这两个平台上创建一个简单的“Hello World”应用。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和技巧,帮助你更好地理解和掌握移动应用开发。
40 17
|
19天前
|
Java 开发工具 Android开发
安卓与iOS开发环境对比分析
在移动应用开发的广阔天地中,安卓和iOS两大平台各自占据半壁江山。本文深入探讨了这两个平台的开发环境,从编程语言、开发工具到用户界面设计等多个角度进行比较。通过实际案例分析和代码示例,我们旨在为开发者提供一个清晰的指南,帮助他们根据项目需求和个人偏好做出明智的选择。无论你是初涉移动开发领域的新手,还是寻求跨平台解决方案的资深开发者,这篇文章都将为你提供宝贵的信息和启示。
24 8
|
14天前
|
开发框架 Android开发 iOS开发
安卓与iOS开发中的跨平台策略:一次编码,多平台部署
在移动应用开发的广阔天地中,安卓和iOS两大阵营各占一方。随着技术的发展,跨平台开发框架应运而生,它们承诺着“一次编码,到处运行”的便捷。本文将深入探讨跨平台开发的现状、挑战以及未来趋势,同时通过代码示例揭示跨平台工具的实际运用。
|
17天前
|
人工智能 安全 物联网
Android与iOS:移动操作系统的双雄争霸
在智能手机市场中,Android和iOS作为两大主流操作系统,各自拥有庞大的用户群体和独特的生态系统。本文将深入探讨这两种系统的发展历程、技术特点、市场表现以及未来趋势,以期为读者提供全面而深入的了解。通过对比分析,我们可以发现,尽管Android和iOS在某些方面存在竞争关系,但它们也在相互借鉴中不断进步和完善。
|
14天前
|
安全 生物认证 Android开发
深入探索iOS与Android操作系统的安全性差异
本文旨在通过对比分析iOS和Android两大主流移动操作系统在安全性方面的差异,揭示它们各自的安全机制、面临的挑战以及用户如何提升自身设备的安全保护。通过对系统架构、应用审核机制、数据加密方式及隐私政策的深入探讨,本文为读者提供了一个全面了解两大平台安全性的视角,并提出了实用的安全建议。
|
19天前
|
Java 调度 Android开发
安卓与iOS开发中的线程管理差异解析
在移动应用开发的广阔天地中,安卓和iOS两大平台各自拥有独特的魅力。如同东西方文化的差异,它们在处理多线程任务时也展现出不同的哲学。本文将带你穿梭于这两个平台之间,比较它们在线程管理上的核心理念、实现方式及性能考量,助你成为跨平台的编程高手。
|
19天前
|
安全 Android开发 iOS开发
深入探索iOS与Android系统架构差异及其对开发者的影响
本文旨在通过对比分析iOS和Android两大移动操作系统的系统架构,探讨它们在设计理念、技术实现及开发者生态方面的差异。不同于常规摘要仅概述内容要点,本摘要将简要触及核心议题,为读者提供对两大平台架构特点的宏观理解,铺垫
|
14天前
|
开发工具 Android开发 iOS开发
Android与iOS生态差异深度剖析:技术架构、开发体验与市场影响####
本文旨在深入探讨Android与iOS两大移动操作系统在技术架构、开发环境及市场表现上的核心差异,为开发者和技术爱好者提供全面的视角。通过对比分析,揭示两者如何塑造了当今多样化的移动应用生态,并对未来发展趋势进行了展望。 ####
|
15天前
|
存储 数据安全/隐私保护 Android开发
Android与iOS的隐私保护机制对比####
本文深入探讨了Android与iOS两大移动操作系统在用户隐私保护方面的策略与技术实现,揭示了两者在设计理念、权限管理、数据加密等方面的差异及其对用户体验的影响。通过对比分析,旨在为用户提供更全面的隐私保护认知,同时为开发者提供跨平台隐私保护的参考。 ####
23 0
|
iOS开发 开发者 容器
iOS兼容开发:让程序同时支持iOS6和iOS7
<p style="margin:0px; padding:0px; color:rgb(68,68,68); font-family:'microsoft yahei',Tahoma,Helvetica,SimSun,sans-serif; font-size:14px; line-height:21px"> 由于各种原因,我们的程序需要同时支持iOS 7以及之前的版本(例如iOS 6
1459 0