У меня есть кнопка увеличения возле слайдера. Теперь я хочу изменить атрибут href
привязки для моего fancybox. По этой причине мне нужно получить текущее изображение jCarousel. Поскольку путь к файлу всегда один и тот же, мне не нужен путь, но если я получу путь + имя файла, все будет в порядке. Я думаю, что я должен пройти DOM и установить атрибут href якоря.
Это то, что я имею до сих пор:
function getCurrImage(carousel, state){
/*alert(carousel.first);*/
}
jQuery(document).ready(function() {
jQuery('#mycarousel').jcarousel({
scroll:1,
'itemLoadCallback': getCurrImage
});
});
Это дает мне индекс текущего изображения в слайдере (например, 1). Также эта функция вызывается несколько раз (не знаю почему). Вот мой псевдокод:
var imagepath = jQuery.find(".jcarousel-item:nth-child(carousel.first)".a.img.attr("src");
jQuery.find(a.enlarge).attr("href",imagepath);
Будет ли это работать?
Редактировать:
Кажется, это работает:
function getCurrImage(carousel, state){
var currentImage = carousel.first-1;
var path = jQuery(".jcarousel-item").eq(currentImage).children('a').attr("href");
jQuery("A.enlarge").attr("href", path);
}
Но моя идея не сработала, как ожидалось. Обычно у меня есть три предмета в моей галерее. Теперь у меня четыре (дублированный контент) в fancybox, и я на последней позиции. Я надеялся, что у меня будет только три элемента, и тот, который в настоящее время показан в jCarousel, должен быть увеличен в fancybox. Поэтому я должен искать другую возможность ...