Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Не всегда срабатывает ( (https://javascript.ru/forum/jquery/44846-ne-vsegda-srabatyvaet.html)

sardonyx 04.02.2014 07:00

Не всегда срабатывает (
 
Посмотрите пожалуйста http://html5.eu.org/ , там есть картинки, которые открываются в всплывающем окне, но если прокрутить карусель несколько раз (сделать круг), то картинки уже не открываются в сплывающем окне. Что сделать, чтобы всплывающее окно всегда работало?

krasovsky 05.02.2014 13:54

Если ты имеешь ввиду всплывающий блок с классом blok3, то там у тебя всплывать нечему - он пуст. Тонее пуст у элементов Li с классмом li4,li5

sardonyx 06.02.2014 19:18

С классом li1 не пуст, там есть много картинок, при нажатии они открываются в сплывающем окне, но если прокрутить карусель по кругу, то тогда при нажатии на картинки они уже открываются не в сплывающем окне.

рони 06.02.2014 19:55

sardonyx,
вы бы определились или $(".example2 a").fancybox(); или $("a[rel=example_group]").fancybox

sardonyx 06.02.2014 20:19

рони,
спасибо, убрал $(".example2 a").fancybox(); , но вопрос ещё не решён

krasovsky 10.02.2014 09:17

Цитата:

Сообщение от sardonyx (Сообщение 296380)
рони,
спасибо, убрал $(".example2 a").fancybox(); , но вопрос ещё не решён

Во первых вместо трех скриптов с инициализацией fancybox - более чем достаточно:
$(document).ready(function() {

			$("a[rel=example_group],a[rel=example_group2],a[rel=example_group3]").fancybox({
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'titlePosition' 	: 'over',
				'titleFormat'		: function(title, currentArray, currentIndex, currentOpts) {
					return '';
				}
			});


			$("#various2").fancybox();

		});

Во вторых не открвается фотка во всплывающем окне потому что впроцессе того как ты крутишь картрусель она у тебя ти переинициализируется , толи переасталяются элементы в block3.

Тут фишка в чем - например ты вешаеш событие клики на какой то элемент например $('.link').click() . Представь что у него есть некий скрытый id. если сделать $('.link').remove() - удалить его, а затем вставить на то же место точно такой же элемент, то клик все равно не сработает,ибо id удаленного не равен id вновь вствленного.
Надеюсь доходчиво объяснил.

Так вот с твоей вырвиглазной каруселькой то же самое - когда она прокручивается 1 оборот, она переинициализируется и все элементы становятся "не теми" на которые ты повесил свой fancybox. И нужно уже переинициализировать уже его.

Ясно?


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