Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.01.2011, 15:57
Аспирант
Отправить личное сообщение для Blizzart Посмотреть профиль Найти все сообщения от Blizzart
 
Регистрация: 03.02.2010
Сообщений: 63

JS и getURL плавный переход к anchor
Объясните, пожалуйста, в чем тут ошибка:
Во флеше я пишу:
getURL("javascript:openNewWindow('#myAnchor','_parent'); ");


Это дает переход на якорь. Все работает. Но в конце функции я добавляю jQuery, который делает этот переход плавным. Но именно он не обрабатываеться, то есть переход все равно резкий

function openNewWindow(URLtoOpen, windowName, windowFeatures) 
{newWindow=window.open(URLtoOpen, windowName, windowFeatures);
 destination = $("#myAnchor").offset().top;
$("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, 1700 );
 }


вот так, например, работает нормально:

setTimeout(function() {destination = $("#myAnchor").offset().top;
 $("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, 1700 );}, 5000)


разницы я не вижу, только во втором варианте в виде отдельной функции, а в первом просто вложено в функцию.
Ответить с цитированием
  #2 (permalink)  
Старый 16.01.2011, 16:17
Аватар для Amphiluke
   ☽
Отправить личное сообщение для Amphiluke Посмотреть профиль Найти все сообщения от Amphiluke
 
Регистрация: 07.01.2011
Сообщений: 254

Резкий переход на якорь делает эта строчка:
Сообщение от Blizzart
newWindow=window.open(URLtoOpen, windowName, windowFeatures);
зачем она?
Ответить с цитированием
  #3 (permalink)  
Старый 16.01.2011, 16:45
Аспирант
Отправить личное сообщение для Blizzart Посмотреть профиль Найти все сообщения от Blizzart
 
Регистрация: 03.02.2010
Сообщений: 63

Это потому что локально у меня не работало:
getURL("#myAnchor","_parent");

На сервере проверил - работает.
И еще потому что я не понимаю как прописать тип окна...
Я исправил js на
function openNewWindow(URLtoOpen) 
 destination = $(URLtoOpen).offset().top;
$("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, 1700 );
 }

В флеше пытался так:
getURL("javascript:openNewWindow('#myAnchor');");

и так:
getURL("javascript:openNewWindow('#myAnchor');","_parent");

Не работает
Ответить с цитированием
  #4 (permalink)  
Старый 16.01.2011, 17:05
Аватар для Amphiluke
   ☽
Отправить личное сообщение для Amphiluke Посмотреть профиль Найти все сообщения от Amphiluke
 
Регистрация: 07.01.2011
Сообщений: 254

Не понятно. У вас этот код вызывается из фрейма? А прокрутить вы ходите родительское окно?
function openNewWindow(URLtoOpen) {
	var doc = self.top.document;
	destination = $(URLtoOpen, doc).offset().top;
	$("html:not(:animated),body:not(:animated)", doc).animate({ scrollTop: destination}, 1700 );
}


Ну и дальше
Код:
getURL("javascript:openNewWindow('#myAnchor')");

Последний раз редактировалось Amphiluke, 16.01.2011 в 17:08.
Ответить с цитированием
  #5 (permalink)  
Старый 16.01.2011, 17:48
Аспирант
Отправить личное сообщение для Blizzart Посмотреть профиль Найти все сообщения от Blizzart
 
Регистрация: 03.02.2010
Сообщений: 63

Огромное спасибо! Так работает. Сам бы я не догадался. в первый раз вижу: self.top.document
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Плавный переход по страницам cyberx Общие вопросы Javascript 118 05.03.2011 13:57
Плавный переход из/в анимации alax загрузка к содержимому ekkl jQuery 8 17.02.2010 12:47
плавный переход backgroundа DiGiTaLLL Элементы интерфейса 8 18.03.2009 15:17