zhaoda / spa

A webapp framework for routing control and view transitions
http://zhaoda.net/spa/docs/
MIT License
330 stars 92 forks source link

iOS 10+ 没有给内容区域添加 spa-scroll-touch 造成无惯性滚动 #46

Closed ufologist closed 7 years ago

ufologist commented 7 years ago

在 iOS 10+ 中测试发现, <div class="container spa-scroll spa-scroll-y"> 没有添加上 spa-scroll-touch 样式, 因此没有应用上惯性滚动的样式 .spa-scroll-touch {-webkit-overflow-scrolling: touch; }

查看代码后发现, 是由于对 iOS 大版本号的获取判断有问题

    if($.os.ios && parseInt($.os.version.slice(0, 1)) > 5) {
      $('.spa-scroll', $page).addClass('spa-scroll-touch')
    }

当 iOS 版本为 10+ 时, 例如 10.2.1, $.os.version.slice(0, 1) 只取第一位数字, 因此得到的版本号是 1, 固然判断就不生效了.

因此对 iOS 大版本号的获取应该修改为 parseInt($.os.version.substring(0, $.os.version.indexOf('.')))

lin-chao commented 7 years ago

@ufologist 建议直接提交修改

zhaoda commented 7 years ago

谢谢 @ufologist 提交bug