iscroll的dom元素的結構是固定的,swiper是容器,scroll是需要滾動的容器,list是滾動的內容
<div class="swiper"> <div class="scroll"> <div class="list"></div> </div> </div>
tips:
1、swiper定位必須為relative,並且高度設置固定值,overflow:hidden;
2、swiper的高度一定要小於scroll的高度
3、初始化uiscroll時,元素必須是顯示的狀態,
4、如果底部還是無法拉上去,查看list中的每個item之間是否有padding,margin(如果是上下滑動,則查看上下),取消padding和margin
5、scroll 是你想要在多大的容器里滾動,list是真正要滾動的內容,所以scrollbar 設置為list
6、使用scroll 上下滾動到指定高度的時候,使用scrollTo,要判斷最大的滾動距離maxScrollY,如果超出這個距離,會先滾到這個位置后再返回回去。
我的案例,頁面中有個div容器,里面設置了兩個tab,點擊相互切換。div容器設置為隱藏,當點擊頁面中的某個按鈕時,顯示該div。我在頁面渲染完成后,就初始化了iscroll,但是發現div滑動不了(只要一放手就回彈到初始位置)。
滾動不了的原因:初始化iscroll時,div是隱藏的狀態,修改初始化的時機,當div顯示后在初始化。
修改后,只有第一個tab,可以正常滑動,第二個依然無法正常滑動,原因同上,div顯示時,只有第一個tab是顯示的狀態,所以在點擊第二個tab時,需要再次初始化一次。
