Плагин jQuery Exposure: несколько галерей

У меня проблемы с размещением двух отдельных галерей на одной странице. Одна галерея выглядит нормально при загрузке экрана (первое изображение, большие пальцы и стрелки влево / вправо). Однако во второй галерее отображаются только стрелки влево / вправо. Когда я нажимаю на любую из стрелок (из первой или второй галереи), она очищает изображение, но большие пальцы и стрелки все еще там. Иногда, щелкая стрелки, он застревает на gif-изображении загрузчика, и изображение не появляется. Я использую демонстрационный плагин jQuery Exposure 4. Что я здесь не так делаю?

<div id="main"><div id="exposure"></div><div class="clear"></div></div>
<div class="panel">
<div id="left"><a href="javascript:void(0);" onclick="$.exposure.prevImage();return true;"><img src="Exposure/left.png" alt="Previous" /></a></div>
    <ul id="images">
        <li><a href="photo1.jpg"><img src="photo1.jpg" /></a></li>
        <li><a href="photo2.jpg"><img src="photo2.jpg" /></a></li>
          </ul>
          <div id="right"><a href="javascript:void(0);" onclick="$.exposure.nextImage();return true;"><img src="right.png" alt="Next" /></a></div>
        </div>

<div id="main"><div id="exposure"></div><div class="clear"></div></div>
<div class="panel">
<div id="left"><a href="javascript:void(0);" onclick="$.exposure.prevImage();return true;"><img src="Exposure/left.png" alt="Previous" /></a></div>
    <ul id="images">
        <li><a href="photo3.jpg"><img src="photo3.jpg" /></a></li>
        <li><a href="photo4.jpg"><img src="photo4.jpg" /></a></li>
          </ul>
          <div id="right"><a href="javascript:void(0);" onclick="$.exposure.nextImage();return true;"><img src="right.png" alt="Next" /></a></div>
        </div>

JQuery:

<script type="text/javascript">
    $(function(){
        $('#images').exposure({target : '#exposure'});
        $('#images2').exposure({target : '#exposure2'});
});

1 ответ

Исправьте свой дубликат id атрибуты в первую очередь. каждый id атрибут должен быть уникальным на странице, дубликат id Атрибуты могут вызывать все виды странного и запутанного поведения.

В вашем случае у вас есть два <div id="exposure"> элементы, но ваша вторая галерея ищет <div id="exposure2">:

$('#images2').exposure({target : '#exposure2'});

Ваша вторая галерея пытается связать себя с чем-то, что не существует во время вашей первой галереи:

$('#images').exposure({target : '#exposure'});

пытается связать себя с двумя разными <div>с тем же id,

Другие вопросы по тегам