jquery cycle2幻灯片嵌套幻灯片下一个和上一个按钮

时间:2013-11-06 22:06:11

标签: javascript jquery html css jquery-cycle2

我使用cycle2插件显示由一些图像和另一个幻灯片组成的幻灯片。内部幻灯片的下一个和上一个按钮由于某些原因(在示例中向上和向下)不起作用,尽管它们已正确设置恕我直言:

data-cycle-prev="#upDiv"
data-cycle-next="#downDiv"

<div id="upDiv">
    <a href="#" id="upImg"><img src="images/up.png" alt="" /></a>
    <p>scroll up</p>
</div>
<div id="downDiv">
    <p>to see more scroll down</p>
    <a href="#" id="downImg"><img src="images/down.png" alt="" class="outer-slide" /></a>
</div>

如何让它们发挥作用?

这是一个演示:http://jsfiddle.net/FKU2L/22/

1 个答案:

答案 0 :(得分:8)

存在一些问题

首先,在第2周期中,嵌套幻灯片应如下所示:

<div class="cycle-slideshow" data-cycle-slides="> div">
    <div><img src="..."/></div>
    <div>
        <div class="cycle-slideshow inner-slideshow">
            <img src="..."/>
            <img src="..."/>
        </div>
    </div>
    <div><img src="..."/></div>
</div>

重要的是幻灯片应该都是相同的标记,例如img img imgdiv div div而不是img div img。因此,您需要在div中包装第一级幻灯片img。由于它们现在不是img,这是默认设置,因此您需要在外部幻灯片显示中设置data-cycle-slides="> div"

此外,您还需要内部幻灯片显示在div内部,例如<div><div class="cycle-slideshow inner-slideshow">而不仅仅是<div class="cycle-slideshow inner-slideshow">。幻灯片可以嵌套,但不能交叉剑。

您的示例目前正在发生的事情是它正在同时运行两个幻灯片,使用两个节目的相同的next和prev按钮,并从img中删除div s。因此,不是运行2个嵌套幻灯片,而是运行2个并发幻灯片,其中一个恰好在另一个内部,这是幻灯片直接相互接触的副产品,第一个节目的幻灯片没有嵌套在{{ 1}} S上。

做了一个工作小提琴:http://jsfiddle.net/filever10/dLQPD/

您可以在此处查看来源了解详情:http://jquery.malsup.com/cycle2/demo/nested.php