V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jackon
V2EX  ›  程序员

发现了一个令我震惊的前端面试绝杀题--移动端浏览器兼容

  •  
  •   jackon ·
    JackonYang · 2017-05-08 23:19:52 +08:00 · 37927 次点击
    这是一个创建于 2786 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有没有遇到过移动端的浏览器兼容问题?

    最近一周,面试了 20+ 人,知道这里存在问题的,不到 4 个人。
    而这四个人里,大概只有 1 个哥们实际处理过。

    大部分人都是反问我:
    Safari / chrome / Firefox 上没有多少兼容性问题吧?
    我一直认为是一个非常基础的问题,
    认真工作半年以后都会知道的基础问题。

    我想,这应该是因为,
    大部分的项目,
    没有用户反馈/投诉机制,
    前端没有监控能力,
    所以,根本不知道这里有多少的体验问题。

    不知道是我们公司收到的简历质量太低,
    还是当前业界现状。

    做为一个非专业的前端,列举几个我知道的坑

    1. 虚拟键盘引起的兼容问题。比如: http://stackoverflow.com/questions/24557780/ios-7-fixed-footer-toolbar-breaks-on-virtual-keyboard
    2. touch 事件引起的。-- 手机端需要单独处理,但手机浏览器之间是否一致,不了解。
    3. iOS 和 android 系统导致的差别。比如,微信内置浏览器。
    4. 微信浏览器,也可以列一条专门吐槽了。
    5. 安卓厂商们魔改(魔法一般的莫名其妙的修改)过的操作系统。三星手机都遇到过,大概是 input 内的元素居中有问题。至于国内厂商们魔改出来的奇葩兼容问题,罄竹难书。

    不是说需要面试者回答出具体的细节,
    而是,至少应该知道这里有坑吧。
    即使自己的项目没有能力检测出这些 bug,
    难道也没有听朋友们聊起过?
    或者,看文档的过程中,就没有一篇文章提到过这类问题?
    在起码,准备面试的时候,经典面试题里也可以搜到过吧。。。

    有一点不太理解,为什么。

    大家如果有其他浏览器兼容的坑,也可以一起吐槽一下。
    我也补全一下自己的清单。
    thanks :)

    最后,夹带私货。
    我司招前端。
    硅谷创业公司,已经获得 VC 融资,主要创始人都有多次创业经验并成功退出。
    核心产品是,利用大量的数据分析,帮助应聘者找到适合自己的职位,目前主要针对北美市场。
    详细: https://www.v2ex.com/t/358568

    如果你恰好知道这些问题,或者感觉这种问题太水,
    不妨找我聊聊新的工作机会,万一我们我们一起工作会更开心呢?
    我的微信: kunth002

    第 1 条附言  ·  2017-05-09 00:31:18 +08:00
    对公司几个标签的解释:
    1. 成功退出。公司出售,股权/期权都正常的变现。
    2. 硅谷公司。公司注册在硅谷,当然,我们指的主要是企业文化。
    3. 为什么在上海。之前研发团队是在多个国家的 remote,接下来要把上海做为主要研发中心。

    更多的关于公司的细节,我可以私聊介绍更多。

    我也是被多个创业公司坑过的码农。
    文章中讨论的问题,可以体现自己的技术状态。
    我主要是做后端 / 大数据,所以,前端只能列列提纲。
    这一次跳过来折腾,是建立在一个比较全面的评估之上。
    比如,
    1. 跟之前团队核心成员的面对面交流。
    2. 查中美的工商注册记录。
    3. ...
    第 2 条附言  ·  2017-05-09 09:57:53 +08:00
    兼容性问题本身,不是能力问题,但是,是经验问题。
    我的初衷是,过滤掉经验比较少的新手。

    比解决问题更难得是,发现问题的能力。
    这个帖子的评论里,大家补充了更多的坑。
    如果一个都没有踩到过,是不是需要反思一下发现问题的能力。

    发现问题,不是靠猜,
    而是通过一些工具/工作流程来保障。
    所以,这也是前端工程化的专业程度的体现。
    121 条回复    2017-05-12 11:29:20 +08:00
    1  2  
    jackon
        101
    jackon  
    OP
       2017-05-09 23:56:57 +08:00   ❤️ 1
    @fakefish 我在意的不是问题细节,而是,大家一提到就知道,这里会有坑。而不是反问,Safari / chrome / Firefox 上没有多少兼容性问题吧?
    smallpath
        102
    smallpath  
       2017-05-10 01:43:06 +08:00
    绝杀... 这种知识是属于靠搜索就很容易解决的, 如果你是想过滤是否经验足够确实没问题, 但我觉得就算没碰到这些问题的前端, 你可以让他当面解决其中一个问题, 看他能否解决问题以及解决问题的思路是否清晰流畅, 这两点反而比浏览器兼容更重要
    nanxiaobei
        103
    nanxiaobei  
       2017-05-10 03:05:00 +08:00
    熟练应用搜索引擎比知道这些重要多了。
    Reign
        104
    Reign  
       2017-05-10 08:21:40 +08:00 via iPhone
    震惊! UC 浏览器也被考核了一个震惊问题
    jziwenchen
        105
    jziwenchen  
       2017-05-10 10:04:25 +08:00
    Mark 下 面试用的上. 哈哈...
    willakira
        106
    willakira  
       2017-05-10 10:08:14 +08:00
    过来说两句,有些坑工作几年都不一定知道,或者不需要知道。
    稍微大点的公司就会在已有的基础上做自己一套全套的前端架构,基本上就是把这些坑都填平了。我们公司就专门有一个前端核心组负责发布通用组件,所有浏览器的问题全部是他们组来 handle。而面向业务的程序员主要负责写业务。
    若楼主只是想找个能做前端核心组的人,然后面试的都是一些面向业务的程序员,那上来吐槽就是南辕北辙了。
    建议楼主多招一些做轮子的工程师,把公司的各种 framework 和监控环境搭起来,然后再来考虑怎么招普通程序员。
    原来你们是做招聘的,这么本地化的需求你们居然把 RD 放到中国…
    poorbug
        107
    poorbug  
       2017-05-10 10:18:43 +08:00
    华为手机用的是 UC 10 的内核....即使是 P9 这样的新机型也是各种兼容性问题堪比古代安卓手机....向华为团队发了邮件,并没有得到回复
    无奈
    Sapp
        108
    Sapp  
       2017-05-10 10:35:42 +08:00
    兼容性的有些坑,不自己做到是根本不会知道的。
    比如你说的虚拟键盘,以前我碰到过一次,ios 和 Android 我只知道微信 Android 很多坑,浏览器没关注过,因为移动端一直做微信内的页面。touch 无非是点透和 click 延迟问题。我倒是真觉得 chrome 移动端也没啥问题,问题就在于没有几个人用 chrome,大部分人用的都是国内魔改的一批浏览器和残废的 Android...
    而且说实话,这些问题只能看出来他有没有干过移动端开发,并不能看出他真正水平。
    aalska
        109
    aalska  
       2017-05-10 10:45:00 +08:00
    @poorbug 爵士的团队 是不会理你的

    他们天天只顾着怎么公关 营销
    jackon
        110
    jackon  
    OP
       2017-05-10 11:15:20 +08:00
    @willakira

    原来你们是做招聘的,这么本地化的需求你们居然把 RD 放到中国…

    最初,我也是同样的怀疑,并且拒绝了工作机会。
    其实,这是国内的特色。

    硅谷的公司,讲究产品立命。
    我们不做地推,用户量也在稳定增长。
    速度不是特别理想,但可以接受。

    最为一个工程师,
    这种产品立命的玩法,
    是最吸引我的点。
    willakira
        111
    willakira  
       2017-05-10 11:35:44 +08:00
    @jackon 鄙司也正好有做招聘,不用地推,各个国家需求非常不一样,RD 中心太远了根本感觉不到。鄙司在北美和东京都有 RD 中心,分别负责北美和亚太区业务。PM 需要本地化,RD 更需要本地化

    建议要做北美市场的话好好 track DoL 的各种统计数据
    jackon
        112
    jackon  
    OP
       2017-05-10 15:13:55 +08:00
    @willakira 看来我们玩法差不多。

    我们的 co-founder,PM 和 市场团队 都在美国,需求是他们敲定的。
    上海主要是偏实现的了,所以,地域文化差异,影响不大。
    vjnjc
        113
    vjnjc  
       2017-05-10 15:31:55 +08:00
    keyboard 没遇到过,倒是移动端的 copy api。。。在 ios 上居然还和 focus 相关。
    KuroNekoFan
        114
    KuroNekoFan  
       2017-05-10 18:30:15 +08:00
    都 ios10 了,还看 ios7 的兼容性问题,必要性不太大吧
    aboutTime
        115
    aboutTime  
       2017-05-10 22:05:34 +08:00
    @fytriht 666
    aboutTime
        116
    aboutTime  
       2017-05-10 22:19:12 +08:00
    接近两年以前,一个面向用户的项目中处理过 10+机器的兼容性问题,vivo、小米、华为,老版本的 IOS iPod,时过境迁我已经只记得 input 隐藏用 span 唤起 和 300ms 点透的问题了,经典问题深入看了下原理,千奇百怪的厂商问题没去记,也记不住,临时解决也不难。
    每家公司的业务场景不同,有些人工作几年还真可能没遇到过你说的有些问题。针对面试者遇到过的场景,考察问题的深度,私以为更能体现面试者的能力,踩过多少前端的坑只能作为一个参考。
    qiukong
        117
    qiukong  
       2017-05-10 23:52:16 +08:00
    应该让用户去兼容网站,而不是让网站去兼容用户。
    Srar
        118
    Srar  
       2017-05-11 01:13:46 +08:00
    再补个 Chrome 58.0.3029.110 动画的 BUG (也有可能是我写的问题 但是以前版本是正常的 Safari 也正常

    Chrome Safari

    PasDajavu
        119
    PasDajavu  
       2017-05-11 17:53:08 +08:00
    做过一些微信项目,微信 X5 内核真的是神坑,就当年 Android 微信缓存问题就头疼不已(好像现在微信已经解决了)
    b0x
        120
    b0x  
       2017-05-11 21:28:44 +08:00 via Android
    过于片面地强调乘法口诀的重要性。其实,现实中,解决问题的方式才是最值得考量的。有了解决的思路,用计算器就行了。前端兼容问题本来就是一个踩坑的过程,要求烂熟于心实在是没必要…遇到了能解决,下次自然就不称之为问题了
    ttop5
        121
    ttop5  
       2017-05-12 11:29:20 +08:00 via Android
    @ivanlw 不能更赞同😂
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3021 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 14:07 · PVG 22:07 · LAX 06:07 · JFK 09:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.