31.05.2016, 11:09
|
Новичок на форуме
|
|
Регистрация: 31.05.2016
Сообщений: 6
|
|
Несколько галерей на странице
Есть две галереи на странице (бывает нужно и больше), при нажатии на миниатюры во втором, переключение изображений происходит в первом. Как их сделать независимыми друг от друга и сохранить весь функционал? Смена id элементов галерей не помогает. Сам в jquery не разбираюсь, может поможете, друзья?
Вот ссылка на это дело: слайдер. Заранее спасибо всем, кто сможет помочь
|
|
31.05.2016, 12:06
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
pavlovskyA,
уберите onclick='setBigImage(this);' и замените скрипт на этот, ссылки тоже не нужны, кроме для большой картинки
$(function() {
$(".img").each(function(indx, el) {
$(el).next().find("img").on("click", function() {
$("img",el)[0].src = $("a",el)[0].href = this.src
})
})
});
Последний раз редактировалось рони, 31.05.2016 в 12:10.
|
|
31.05.2016, 12:29
|
Новичок на форуме
|
|
Регистрация: 31.05.2016
Сообщений: 6
|
|
Спасибо огромное! Сделал как вы написали, все работает так, как я и хотел. А ссылки получается нужны только, чтобы увеличенные изображения каждого блока просматривать как галерею?
|
|
31.05.2016, 12:46
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
pavlovskyA,
нужны ссылки только в блоках div.img и код правился посмотрите такой ли у вас -- пост 2
|
|
31.05.2016, 12:50
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
pavlovskyA, что должно остатся
<div class="img">
<a href="img/1.jpg" rel="example_group" id="adpdp14">
<img src="img/1.jpg" id="dp14" style="margin-bottom: 3px;" alt="" /></a>
</div>
<div class="thumbs">
<div class="it"><img src="img/1.jpg" alt="" /></div>
<div class="it"><img src="img/3.jpg" alt="" /></div>
<div class="it"><img src="img/4.jpg" alt="" /></div>
<div class="it"><img src="img/5.jpg" alt="" /></div>
<div class="it"><img src="img/6.jpg" alt="" /></div>
<div class="it"><img src="img/7.jpg" alt="" /></div>
<div class="clr"></div>
</div>
|
|
31.05.2016, 13:33
|
Новичок на форуме
|
|
Регистрация: 31.05.2016
Сообщений: 6
|
|
Да, все так. Еще я убрал id="adpdp14" и id="dp14" - они не несли никакой стилевой нагрузки, нужны были только для работы старого скрипта.
|
|
31.05.2016, 13:37
|
Новичок на форуме
|
|
Регистрация: 31.05.2016
Сообщений: 6
|
|
Перезалил файл: первый вариант без ссылок, второй со ссылками.
|
|
31.05.2016, 13:53
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
pavlovskyA,
и?
|
|
31.05.2016, 14:03
|
Новичок на форуме
|
|
Регистрация: 31.05.2016
Сообщений: 6
|
|
Это тестовый вариант. Помещу в рабочую страницу, посмотрю, как лучше будет. Проще и быстрее в реализации, конечно первый способ без ссылок, но на каком остановлюсь, пока не решил еще. Спасибо еще раз
|
|
31.05.2016, 14:29
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
pavlovskyA,
на всякий случай, не нужны ссылки и дополнительная инициализация fancybox, плюс показ галереи начинается с той большой картинки по которой кликнули.
$(function() {
$(".img").each(function(indx, el) {
var img = $(el).next().find("img");
var index = 0;
img.on("click", function() {
index = img.index(this);
$("img", el)[0].src = $("a", el)[0].href = this.src
});
var map = $.map(img, function(el) {
return {
href: el.src
}
});
$(el).click(function(event) {
event.preventDefault();
$.fancybox(map, {
index: index,
"titleFormat": function(title, currentArray, currentIndex, currentOpts) {
return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + " / " + currentArray.length + (title.length ? " " +
title : "") + "</span>"
}
})
})
})
});
|
|
|
|