ionic3 滚动页面时 (ios) safari橡皮筋效果

-webkit-overflow-scrolling:auto | touch | [initial | inherit | unset | revert]; 

用ionic3做手机通讯录,拖动右边字母索引控制联系人(scroll-content元素)滚动时, 在ios中ionic页面会跟着一起滚动。

原因就是:

    1、ios 中ionic内置浏览器为Safari,

    2、她实现了-webkit-overflow-scrolling:(目前安卓上未实现)

    3、ionic给 scroll-content 元素加了-webkit-overflow-scrolling: touch;

在ios中,滚动惯性(手松开后页面还会减速滚动一段距离)和橡皮筋效果是不能分开的。

如果直接使用样式 -webkit-overflow-scrolling: auto | unset; 覆盖 scroll-content 的样式的话,滚动的惯性和橡皮筋效果同时消失。

肯定不是我们想要的:

那么更好的解决办法是:

    1、在 scroll-content 上添加样式 -webkit-overflow-scrolling: auto | unset;  去掉橡皮筋效果;

    2、同时将联系人列表放在一个容器 div 中,容器div 设置为 scroll-content 同样的高度,并设置overflow-y: auto;

    3、将容器div 设置样式 -webkit-overflow-scrolling: auto  让其拥有滚动惯性和橡皮筋效果。

    4、将包装通讯录字母索引的div容器放到 2 、中的容器div 外。  

这样,拖动字母索引div,就不会引起 scroll-content  跟着滚动了。

猜你喜欢

转载自blog.csdn.net/qq_36171431/article/details/81103356