关于目前前端的一些想法

2013-04-09 10:33:22 +08:00
 wovfeng
昨天有人问我 移动端web的iscroll的问题,我告诉他最好用原生的 支持 ios5.

使用方法如下:

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

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

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

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

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

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

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

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

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

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

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

我只是希望不要把时间浪费在没有用的事情上。h5的出现并不是为了把事情复杂化,而是把事情简单化。
wovfeng
2013-04-09 11:34:44 +08:00
@Sivan 并不是考虑兼容性。但是应该做到渐进增强。而不是完全一样。

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

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

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

@wovfeng 有什么好的解决办法么?还是照样使用
perfectworks
2013-04-11 20:44:41 +08:00
平稳退化和渐进增强的问题老生常谈,可以止了

就一句话:看产品
ytzong
2013-04-11 21:05:12 +08:00
你还是不够激进,你应该用native的而非web
wovfeng
2013-04-12 10:57:44 +08:00
@YuHong android浏览器是不支持 scrolling touch的。但是支持overflow:scroll只是效果不是很流畅。
不过chrome for android 是支持scrolling touch的。

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

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

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

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

© 2021 V2EX