关于目前前端的一些想法 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
wovfeng

关于目前前端的一些想法

  •  
  •   wovfeng
    wov 2013 年 4 月 9 日 4165 次点击
    这是一个创建于 4765 天前的主题,其中的信息可能已经有所发展或是发生改变。
    昨天有人问我 移动端web的iscroll的问题,我告诉他最好用原生的 支持 ios5.

    使用方法如下:

    div{
    overflow:auto;
    -webkit-overflow-scrolling:touch;
    }

    这样好处就是 维护成本极低,而且效果非常流畅。

    但是他回复我还必须要兼容之前的版本。

    大家是不是都是这样,必须不停的考虑之前的系统?

    我觉得没有必要的原因有几点:
    1.移动的叠代很快,考虑之前的版本本身没有错,但是完全一样就没有必要了
    2.苹果新产品都会预装最新的系统,而且不可逆。所以旧版本份额也会逐渐减少
    3.其实ie6份额在中国这么高,开发者也有一定责任,我们总是在不停的兼容ie6而花费了大量的时间和资源。所以用户还有升级浏览器的必要么?
    4.我经常说的一句话:做过去的事,做现在的事,做未来的事。 我会选择做未来的事。

    有可能是我太激进。但是作为一个前端工程师,我已经有1年没有碰ie6,7,8 了,也照样活的好好的。

    欢迎大家拍砖
    9 条回复    1970-01-01 08:00:00 +08:00
    hzlzh
        1
    hzlzh  
    PRO
       2013 年 4 月 9 日
    iscroll 在移动端短期内还是很有用的,移动开发迭代很快,但是消费者(用户)的设备迭代却不快,再加上很多考虑到越狱而放弃了版本更进的用户等等,有时候要跳出圈子,考虑下真正的用户群是什么。
    ps: 打开Google analytics, 查查用户的UA和iOS版本分布图,用数据来决定取舍。

    开个玩笑:你倒数第二句话很好驳斥:做为一个用户用了10+年 ie678 也活的很幸福。
    Sivan
        2
    Sivan  
       2013 年 4 月 9 日 via iPhone
    要从用户的角度出发,不兼容低版本或低级浏览器不会使用户更新浏览器,只会流失这部分用户。兼容性是前端必须要考虑和学习的东西,没法偷懒。
    wovfeng
        3
    wovfeng  
    OP
       2013 年 4 月 9 日
    @hzlzh http://umindex.com/#ios_system 这个是最新的ios版本统计。

    iscroll的原理是顶部绝对定位,底部绝对定位。中间内容使用transform滚动。并且兼容了pc的事件,所以其实效率并不高。由于特殊性质本身也会有些问题,比如文本框内没有办法输入文字等等。

    而使用iscroll 的原因是因为早期的 ios 不支持 position:fixed.(虽然目前支持的也不完美 会有抖动) 而早期的android 是支持 position:fixed 但是不支持 overflow:auto。 导致的。

    所以真正的解决办法(当然还要看实际问题)并不一定是使用iscroll。

    我只是希望不要把时间浪费在没有用的事情上。h5的出现并不是为了把事情复杂化,而是把事情简单化。
    wovfeng
        4
    wovfeng  
    OP
       2013 年 4 月 9 日
    @Sivan 并不是考虑兼容性。但是应该做到渐进增强。而不是完全一样。

    况且把时间浪费在使用hack而解决的"兼容性"上,对于后期的维护负担太重了。
    hzlzh
        5
    hzlzh  
    PRO
       2013 年 4 月 9 日
    @wovfeng position:fixed的问题在iOS和Android上一直都是蛋疼的问题,但可以有比较折中的兼容方式,否则为了一个menubar耗费太多的确不好。

    另外我说的 [版本分布图] 是指单个产品的,而非友盟这种总的。
    举个简单的例子:
    V2EX,访客大部分是‘先进’浏览器,主要是IT从业人群,因此不用过多考虑ie678。
    TaoBao,面向的是普通消费大众,兼容就是必要的,每一个用户都是不可多得的财富。

    所以建议你分析你所维护产品的统计(如Google analytics或友盟单个app后台),找出受众分布群,就能大致决定是否要放弃ie678了
    YuHong
        6
    YuHong  
       2013 年 4 月 11 日
    -webkit-overflow-scrolling:touch 在Android设备上触控效果极差,甚至没有滚动指示条。

    @wovfeng 有什么好的解决办法么?还是照样使用
    perfectworks
        7
    perfectworks  
       2013 年 4 月 11 日
    平稳退化和渐进增强的问题老生常谈,可以止了

    就一句话:看产品
    ytzong
        8
    ytzong  
       2013 年 4 月 11 日 via iPad
    你还是不够激进,你应该用native的而非web
    wovfeng
        9
    wovfeng  
    OP
       2013 年 4 月 12 日   1
    @YuHong android浏览器是不支持 scrolling touch的。但是支持overflow:scroll只是效果不是很流畅。
    不过chrome for android 是支持scrolling touch的。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2844 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 41ms UTC 09:09 PVG 17:09 LAX 02:09 JFK 05:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86