1

我在垂直 iScroll 中实现 Carousel 时遇到问题。由于 Carousel 是水平滚动而 iScroll 是垂直滚动,因此会导致故障,即使我禁用 Carousel 也会垂直滚动。

我尝试将两个包装器分开(即....,...),但问题仍然存在。有人可以告诉我如何解决这个问题。

(我是 Javascript 新手,所以一些例子会很棒)

这是我的脚本:

var myScroll, myWipe; 
function loaded() { 
                myScroll = new iScroll('wrapper1'); 
                myWipe = new iScroll('wrapper2', { 
                snap: true, 
                momentum: false, 
                vscroll: false, 
                hscroll: true, 
                lockDirection: true, 
                hScrollbar: false, 
                onScrollEnd: function () { 
                        document.querySelector('#indicator > li.carouselSelect').className 
= ''; 
                        document.querySelector('#indicator > li:nth-child(' + 
(this.currPageX+1) + ')').className = 'carouselSelect'; 
                } 
         }); 
        }; 

window.addEventListener('load', loaded, false); 

和我的 HTML:

<div id="wrapper1"> 
<div id="scroller1"> 
        <ul class="table-view table-action "> 
                <li></li> 
                <li></li> 

<!--myWipe--> 
<div id="wrapper2"> 
        <div id="scroller2"> 
                <ul> 
                    <li></li> 
                    <li></li> 
                    <li></li> 
                </ul> 
        </div> 
</div> 

<div id="nav"> 
        <div id="prev" onclick="myWipe.scrollToPage('prev', 0);return 
false">&larr; prev</div> 
        <ul id="indicator"> 
                <li class="carouselSelect">1</li> 
                <li>2</li> 
                <li>3</li> 
        </ul> 
        <div id="next" onclick="myWipe.scrollToPage('next', 0);return 
false">next &rarr;</div> 
</div><!--end myWipe--> 
</ul> 
</div><!--end #scroller1--> 
</div><!--end #wrapper1-->
4

3 回答 3

3

干得好...

http://jsfiddle.net/manseuk/r9VL2/2/

垂直滚动内的水平旋转木马。

于 2012-02-06T14:14:42.380 回答
0

尝试将 myWipe 移到无序列表的外部。

于 2012-02-22T19:23:28.103 回答
0

如果你在进行多向滚动,你可以试试Motus.js

*免责声明:我写了这个库。

于 2013-04-17T18:25:49.457 回答