0

我有以下代码:

$(document).ready(function(){
    $('.porslider > .slides > li > div > ul > li').click(function() {
        var which = $(this).index();
        $('#big').find('div').hide().eq(which).show();
    });
});

当我点击一个 li 项目时,会显示一个 div。这是有效的。但不是当我把它放在一个flexslider中时。我的 HTML 看起来像这样。

<div class="flexslider porslider">
    <ul class="slides">
        <li>
            <div>
                <ul class="porimages ulpor">
                    <li><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li class="mr"><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li class="mr"><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                </ul>
            </div>                
        </li>
        <li>
            <div>
                <ul class="porimages ulpor">
                    <li><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li class="mr"><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li class="mr"><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                    <li><a><img src="por_small/piWD00001.png" alt="" height="142" width="142"/></a></li>
                </ul>
            </div>                
        </li>
    </ul>
</div>

<div id="big">
    <div><img src="por_big/piWD00001.png" /></div>
    <div><img style="opacity: 0.5;" src="por_big/piWD00001.png" /></div>
    <div><img style="border: 2px solid red;" src="por_big/piWD00001.png" /></div>
    <div><img src="por_big/piWD00001.png" /></div>
    <div><img src="por_big/piWD00001.png" /></div>
    <div><img src="por_big/piWD00001.png" /></div>
    <div><img style="opacity: 0.1;" src="por_big/piWD00001.png" /></div>
    <div><img style="border: 2px solid blue;" src="por_big/piWD00001.png" /></div>
    <div><img src="por_big/piWD00001.png" /></div>
    <div><img src="por_big/piWD00001.png" /></div>
</div>

我的 CSS 看起来像这样:

#big div {
display: none;
}

有没有简单的方法让他也看到第二张幻灯片?现在他只看到前五个缩略图,但我想要的是更多幻灯片。因此,当人们转到第二张幻灯片时,他们也会看到相同的图像但更大。如何在更多幻灯片上使用此脚本?

谢谢!

4

1 回答 1

0

http://jsfiddle.net/4KhUb/4/

试试这个开始,看看它是否有效......我认为 Flexslider 在你的 HTML 中包装了一些东西,使你的(丑陋的)选择器无法工作。

$('.porimages > li').click(function() {
    var which = $(this).index();
    $('#big').find('div').hide().eq(which).show();
});

或者

$('.porslider li li').click(function() {
    var which = $(this).index();
    $('#big').find('div').hide().eq(which).show();
});
于 2013-10-09T16:35:01.843 回答