Показать сообщение отдельно
  #1 (permalink)  
Старый 22.06.2012, 07:32
Новичок на форуме
Отправить личное сообщение для vhlamm Посмотреть профиль Найти все сообщения от vhlamm
 
Регистрация: 22.06.2012
Сообщений: 2

offset: начальное смещение изображения за границу фрейма
Здравствуйте. помогите разобраться. есть скрипт "Tinytips - jQuery", в котором при наведение всплывают подсказки. У меня оформлено это в виде меню ресторана. При наведение курсора на одно из блюд, справо в фиксированном месте плавно появляется изображение этого блюда. (скриншоты прилагаются)
раз
два
А проблема вот в чем. При первом наведение фотография смещается вверх, за границу фрейма. При втором и последующем наведение изображение уже на положенном месте. При перезагрузки страницы история повторяется. Смещается только yOffset (по вертикали), горизонталь (хOffset) стабильна всегда. Все повторяется под разными браузерами.

//Смещения для подсказки подбираются так, чтоды она была центрирована над элементом, но 
			// размещалась так, чтобы не перекрывать элемент.
			var yOffset = (tinyTip.height() - 300);
			var xOffset = (tinyTip.width() - 710);
			
			// Получаем координаты элемента с подсказкой и делаем новую копию,
			// так что мы сохраняем оригинал нетронутым.
			var pos = $(this).offset();
			var nPos = pos;
			
			// Добавляем смещение для позиции подсказки
			nPos.top = yOffset;
			nPos.left = pos.left - xOffset;
			
			// Устанавливаем для подсказки абсолютное позиционирование и высокое значение z-index, 
			// а затем размещаем ее в нужное место и показываем.
			tinyTip.css('position', 'absolute').css('z-index', '1000');
			tinyTip.css(nPos).fadeIn(animSpeed);
			
		}, function() {
			
			$(this).attr('title', tText);
		
			// Плавно скрываем подсказку, когда курсор мыши перемещается с элемента,
			// и удалаем ее из структуры DOM.
			tinyTip.fadeOut(animSpeed, function() {
				$(this).remove();
			});
Изображения:
Тип файла: jpg Меню.jpg (8.2 Кб, 4 просмотров)
Тип файла: jpg Меню(2).jpg (14.1 Кб, 2 просмотров)

Последний раз редактировалось vhlamm, 22.06.2012 в 07:51.
Ответить с цитированием