как в galleriffic внедрить fancybox
Здравствуйте.
На сайте используется галерея galleriffic. Все как обычно: маленькие иконки и большая картинка. Выбираешь определенную иконку и она отображается, как большая картинка. Только мне нужно, чтобы при нажатии на большую картинку она открывалась в модальном окне(срабатывал fancybox). Я прописала адрес ссылки к большой картинке, но эта картинка открывается в новом окне. А мне нужно, чтобы срабатывал fancybox. Я так понимаю, что между двумя плагинами возникает конфликт. Если у кого-то есть опыт работы с подобными задачами или есть идеи, как разрешить данный вопрос прошу помочь. Спасибо за помощь. |
lara_,
Типично пытаются подключать к каждому плагину свою библиотеку jQuery По идее нужно оставлять лишь одну из них, на месте подключения самой первой библиотеки |
Deff, не совсем Вас поняла.
Я подключила библиотеки jquery-1.7.2.min.js, gallerific.js, jquery.fancybox-1.3.4.pack.js. Я новичок в подобных вопросах, поэтому не могли бы Вы понятнее мне объяснить. Спасибо. |
Цитата:
|
http://www.polinadobryakova.com/gall...lied-arts.html
При щелчке на большой картинке она должна открываться в модальном окне(сейчас картинка открывается в новом окошке). |
lara_,
1. А где инициализация fancybox ? 2. Пропишите ссылки на большую(помимо тега a) в атрибуте data="Тут ссылка" в мелкой картинке, ибо галлерея вынимает картинку из тега и кладет её в правый слайдер. Перед инициализацией fancybox нужно выпарсить URL из data и переобуть картинку заново |
1. инициализация fancybox:
$("a[rel=galI]").fancybox({ 'transitionIn': 'none', 'transitionOut': 'none', 'titlePosition' : 'over', 'titleFormat' : function(title, currentArray, currentIndex, currentOpts) { return '<span id="fancybox-title-over">' + title + '</span>';} }); //внизу страницы 2.Прописала ссылки (не уверена, что правильно поняла). |
Цитата:
gallery/resizer.php?imgfile=painting-ru%2Fb2.jpg&max_width=472&max_height=543 |
gallery/resizer.php?imgfile=painting-ru%2Fb2.jpg&max_width=472&max_height=543
-Это ссылка на масштабированную картинку. Мне нужно, чтобы при нажатии открывалась картинка с реальными размерами. Или они должны быть одинаковы? |
Цитата:
|
Вот такая суммарная замена инициализации
<script type="text/javascript">
jQuery(document).ready(function($) {
// We only want these styles applied when javascript is enabled
$('div.navigation').css({'width' : '300px', 'float' : 'left'});
$('div.content').css('display', 'block');
$("#thumbs ul.thumbs a.thumb img").mousedown(function(){
objNN='';
});
// Initialize Advanced Galleriffic Gallery
var gallery = $('#thumbs').galleriffic({
delay: 2500,
numThumbs: 8,
preloadAhead: 16,
enableTopPager: false,
enableBottomPager: true,
maxPagesToShow: 5,
imageContainerSel: '#slideshow',
controlsContainerSel: '#controls',
captionContainerSel: '#caption',
loadingContainerSel: '#loading',
renderSSControls: false,
renderNavControls: true,
nextPageLinkText: '',
prevPageLinkText: '',
enableHistory: true,
autoStart: false,
syncTransitions: false,
defaultTransitionDuration: 900
});
//Устанавливаем fancybox на текущую картинку в слайдере
var objNN='';
$("#slideshow a.advance-link img").live('mouseover',function(){
if(objNN!==$(this)[0]){ objNN=$(this)[0];
$(this).parent().fancybox({
'transitionIn' : 'none',
'transitionOut' : 'none',
'titlePosition' : 'over',
'titleFormat' : function(title, currentArray, currentIndex, currentOpts) {
return '<span id="fancybox-title-over">' + title + '</span>';}
});
}
});
});
</script>
|
Спасибо большое, что потратили свое время и помогли мне.
Сейчас у меня при нажатии на иконку происходит смена большой картинки(увеличивается иконка), а также срабатывает fancybox. Спасибо большое, т.к. у меня вообще ничего не получилось. Можно еще спросить: дело в том, что я, наверное, не совсем правильно объяснила, что мне нужно. При щелчке мыши на большой картинке (она расположена справа) должен срабатывать fancybox(модальное окно с отбражением большой картинки). |
Цитата:
<script type="text/javascript">
jQuery(document).ready(function($) {
// We only want these styles applied when javascript is enabled
$('div.navigation').css({'width' : '300px', 'float' : 'left'});
$('div.content').css('display', 'block');
// Initialize Advanced Galleriffic Gallery
var gallery = $('#thumbs').galleriffic({
delay: 2500,
numThumbs: 8,
preloadAhead: 16,
enableTopPager: false,
enableBottomPager: true,
maxPagesToShow: 5,
imageContainerSel: '#slideshow',
controlsContainerSel: '#controls',
captionContainerSel: '#caption',
loadingContainerSel: '#loading',
renderSSControls: false,
renderNavControls: true,
nextPageLinkText: '',
prevPageLinkText: '',
enableHistory: true,
autoStart: false,
syncTransitions: false,
defaultTransitionDuration: 900
});
//Устанавливаем fancybox на текущую картинку в слайдере
var objNN='';
$("#slideshow a.advance-link img").live('mouseover',function(){
if(objNN!==$(this)[0]){ objNN=$(this)[0];
$(this).parent().fancybox({
'transitionIn' : 'none',
'transitionOut' : 'none',
'titlePosition' : 'over',
'titleFormat' : function(title, currentArray, currentIndex, currentOpts) {
return '<span id="fancybox-title-over">' + title + '</span>';}
});
}
});
});
</script>
|
Спасибо Вам большое.
Как здорово!!! Все работает!! Я так рада. Спасибо Вам. Вы мне очень помогли. Спасибо. |
<script type="text/javascript">
jQuery(document).ready(function($) {
// We only want these styles applied when javascript is enabled
$('div.navigation').css({'width' : '300px', 'float' : 'left'});
$('div.content').css('display', 'block');
$("#thumbs ul.thumbs a.thumb img").mousedown(function(){
objNN='';
});
// Initialize Advanced Galleriffic Gallery
var gallery = $('#thumbs').galleriffic({
delay: 2500,
numThumbs: 8,
preloadAhead: 16,
enableTopPager: false,
enableBottomPager: true,
maxPagesToShow: 5,
imageContainerSel: '#slideshow',
controlsContainerSel: '#controls',
captionContainerSel: '#caption',
loadingContainerSel: '#loading',
renderSSControls: false,
renderNavControls: true,
nextPageLinkText: '',
prevPageLinkText: '',
enableHistory: true,
autoStart: false,
syncTransitions: false,
defaultTransitionDuration: 900
});
//Устанавливаем fancybox на текущую картинку в слайдере
var objNN='';
$("#slideshow a.advance-link img").live('mouseover',function(){
if(objNN!==$(this)[0]){ objNN=$(this)[0];
$(this).parent().fancybox({
'transitionIn' : 'none',
'transitionOut' : 'none',
'titlePosition' : 'over',
'titleFormat' : function(title, currentArray, currentIndex, currentOpts) {
return '<span id="fancybox-title-over">' + title + '</span>';}
});
}
});
});
</script>
Поправил |
| Часовой пояс GMT +3, время: 03:30. |