Доброго времени суток всем!
Собственно, сабж.
На сайте при клике на ссылку вида
<a class="fancybox" href="vyveski?ajax=1">Вывески</a>
во всплывающем окне аяксом загружается страница. На ней ссылка вида
<a class="ngg-fancybox fancybox2" rel="a8d4d19c6389e219203d095f7ebf7721" title=" " href="standart-2-1.jpg"><img width="240" height="160" src="standart-2-1.jpg-nggid011-ngg0dyn-240x160x100-00f0w010c011r110f110r010t010.jpg" alt="standart-2.jpg" title="standart-2.jpg"></img></a>
Проблема в том, что мне нужно, что-бы окно родитель после клика осталось открытым. А оно закрывается.
На исходной странице fancybox инициализируется так:
jQuery(function(){
jQuery.fn.getTitle = function() { // Copy the title of every IMG tag and add it to its parent A so that fancybox can show titles
var arr = jQuery("a.fancybox");
jQuery.each(arr, function() {
var title = jQuery(this).children("img").attr("title");
jQuery(this).attr('title',title);
})
}
// Supported file extensions
var thumbnails = jQuery("a:has(img)").not(".nolightbox").filter( function() { return /\.(jpe?g|png|gif|bmp)$/i.test(jQuery(this).attr('href')) });
thumbnails.addClass("fancybox").getTitle();
jQuery("a.fancybox").fancybox({
'cyclic': false,
'autoScale': true,
'padding': 30,
'opacity': true,
'speedIn': 500,
'speedOut': 500,
'changeSpeed': 300,
'overlayShow': true,
'overlayOpacity': "0.3",
'overlayColor': "#666666",
'titleShow': true,
'titlePosition': 'inside',
'enableEscapeButton': true,
'showCloseButton': true,
'showNavArrows': true,
'hideOnOverlayClick': true,
'hideOnContentClick': false,
'width': 560,
'height': 340,
'transitionIn': "fade",
'transitionOut': "fade",
'centerOnScroll': true
});
jQuery().fancybox({
'type': 'ajax'
});
})
На странице загружаемой аяксом:
jQuery(function(){
jQuery("a.fancybox2").fancybox({
'cyclic': true,
'autoScale': true,
'padding': 30,
'opacity': true,
'speedIn': 500,
'speedOut': 500,
'changeSpeed': 300,
'overlayShow': true,
'overlayOpacity': "0.3",
'overlayColor': "#666666",
'titleShow': true,
'titlePosition': 'inside',
'enableEscapeButton': true,
'showCloseButton': true,
'showNavArrows': true,
'hideOnOverlayClick': true,
'hideOnContentClick': false,
'width': 560,
'height': 340,
'transitionIn': "fade",
'transitionOut': "fade",
'onStart': function() {
window.last = this.element;
},
'onClosed': function() {
setTimeout( function() {
jQuery(window.last).trigger('click')
}, 300);
},
'centerOnScroll': true,
});
})
Собственно, 'onClosed' и 'onStart' в последней инициализации, это попытка решить проблему, как додумался.
В JavaScript совершенно не разбираюсь, просто очень нужно сделать, причем ещё вчера.
Просьба ткнуть носом, в чем я не прав и где почитать как надо? Гугл молчит. Или я его не так спрашиваю.