Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Fancybox 1.2 и доп. скрипт (https://javascript.ru/forum/jquery/14529-fancybox-1-2-i-dop-skript.html)

Nevil 20.01.2011 11:20

Fancybox 1.2 и доп. скрипт
 
Необходимо при загрузке или до загрузки fancybox выполнить дополнительный скрипт, которому нужно передать id элемента, по которому вызван fancybox

$("a#inline").fancybox({ 
'hideOnContentClick': false,
'overlayOpacity': 0.3,
'centerOnScroll': false,
'frameWidth': 400,
'frameHeight': 150,
'callbackOnStart': function () 
{
alert((this).attr('href'));
}
});


Код:

Ошибка: this.attr is not a function
Как получить id, по которому был вызван fancybox?

Nevil 20.01.2011 11:40

Т.е. на один элемент мне надо два действия назначит, и ajax-скрипт выполнить, передав ему id элемента и fancybox открыть

Nevil 20.01.2011 12:06

Вообщем

$("a#inline").fancybox({ 
							   'hideOnContentClick': false,
							   'overlayOpacity': 0.3,
							   'centerOnScroll': false,
							   'frameWidth': 400,
							   'frameHeight': 150,
							   'callbackOnStart': function () 
							   {
								   print_r($(this));
							   }
							   });


И возвращает сам объет:
{
length: 1
0: {
padding: 10
imageScale: true
zoomOpacity: false
zoomSpeedIn: 0
zoomSpeedOut: 0
zoomSpeedChange: 300
easingIn: swing
easingOut: swing
easingChange: swing
frameWidth: 400
frameHeight: 150
overlayShow: true
overlayOpacity: 0.3
hideOnContentClick: false
centerOnScroll: false
itemArray: {
}
callbackOnStart: function () { print_r($(this)); }
callbackOnShow: {
}
callbackOnClose: {
}
}


а как выйти на ссылку, по которой был вызван fancybox?

Nevil 20.01.2011 12:37

Ппц.. нахрена форумы, если ответ сам все равно находишь, вот так это делается:

$("a#inline").live("mousedown", function()
	{
		document.title=$(this).attr('class').substr(2);
		$(this).fancybox(
		{
			'hideOnContentClick': false,
			'overlayOpacity': 0.3,
			'centerOnScroll': false,
			'frameWidth': 400,
			'frameHeight': 150
		});
	});


Часовой пояс GMT +3, время: 05:30.