Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.10.2011, 22:20
Интересующийся
Отправить личное сообщение для Nikoole Посмотреть профиль Найти все сообщения от Nikoole
 
Регистрация: 04.07.2011
Сообщений: 20

iframe и якорь
Ребят, не могу найти сам, есть ли решение.
на странице есть iframe. Над iframe разместил:
<-Назад Вперед->
и в <input type = "hidden" id = "anchors"> - список якорей в этом iframe

Когда давлю Назад или Вперед, происходит это:
var iframe = document.getElementById('didacticfileContent_'+DIDACTICCODE);
iframe.src = iframe.src.split('#')[0] +"#"+ anchor; // нужный анкор выбираю заранее

Опытным путем выяснил что заново документ не загружается, но вот сам iframr прыгает вверх ОСНОВНОЙ страницы, а мне надо чтобы позиционирование по анкору было только внутри iframe. Как этого добиться?
Ответить с цитированием
  #2 (permalink)  
Старый 09.10.2011, 23:19
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

iframe.src = iframe.src.split('#')[0] +"#"+ anchor;


мб надо только хеш менять, а не весь url... тогда будет имитация перехода по якорю

делать так

iframe.contentWindow.location.hash = anchor;
Ответить с цитированием
  #3 (permalink)  
Старый 09.10.2011, 23:31
Интересующийся
Отправить личное сообщение для Nikoole Посмотреть профиль Найти все сообщения от Nikoole
 
Регистрация: 04.07.2011
Сообщений: 20

Сообщение от melky
iframe.contentWindow.location.hash = anchor;
Именно это - не срабатывает... Покопаю в эту сторону.
Ответить с цитированием
  #4 (permalink)  
Старый 09.10.2011, 23:46
Интересующийся
Отправить личное сообщение для Nikoole Посмотреть профиль Найти все сообщения от Nikoole
 
Регистрация: 04.07.2011
Сообщений: 20

http://www.w3schools.com/tags/tag_iframe.asp

вот тут говорят, что у iframe нет таких штук как вы написали ...
Можно ли как то блокировать прокрутку окна?
Сделать так: Блокируем прокрутку окна -> Устанавливаем якорь в iframe -> разблокируем возможность прокрутки окна.
Ответить с цитированием
  #5 (permalink)  
Старый 09.10.2011, 23:50
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Nikoole Посмотреть сообщение
вот тут говорят, что у iframe нет таких штук как вы написали ...
<body></body>
<script>
alert( typeof document.body.appendChild( document.createElement('iframe') ).contentWindow );
</script>
Ответить с цитированием
  #6 (permalink)  
Старый 10.10.2011, 00:04
Интересующийся
Отправить личное сообщение для Nikoole Посмотреть профиль Найти все сообщения от Nikoole
 
Регистрация: 04.07.2011
Сообщений: 20

melky, спасибо за наглядный пример. Вы были правы. Я ожидал изменений в src (когда экспериментировал), изменяя hash как вы предложили. Сейчас попробывал - кидает на нужное место в фрейме, но и основная страница прыгает, как обычно .
Пытаюсь решить задачу экспериментами...
Ответить с цитированием
  #7 (permalink)  
Старый 10.10.2011, 07:35
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

что же, желаем удачи :)))
Ответить с цитированием
  #8 (permalink)  
Старый 10.10.2011, 13:09
Интересующийся
Отправить личное сообщение для Nikoole Посмотреть профиль Найти все сообщения от Nikoole
 
Регистрация: 04.07.2011
Сообщений: 20

Попытка прокрутки iframe с помощью функции scrollIntoView увенчалась так же неудачей... Тот же эффект...
Ответить с цитированием
  #9 (permalink)  
Старый 10.10.2011, 13:36
Интересующийся
Отправить личное сообщение для Nikoole Посмотреть профиль Найти все сообщения от Nikoole
 
Регистрация: 04.07.2011
Сообщений: 20

Утро вечера мудренее... В итоге всех подугов вылезло вот это:
iframe.contentWindow.window.scroll(0, iframe.contentWindow.document.getElementsByName(anchor)[0].offsetTop)

И оно работает.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрыть iframe - транспорт при отправке формы. Kotakota AJAX и COMET 2 30.08.2011 10:43
Вложенные IFrame и History goldserg Элементы интерфейса 1 28.03.2011 15:57
Закрыть iframe из iframe rawuk Элементы интерфейса 1 02.03.2011 11:05
как можно создать iframe со скриптами GOll Общие вопросы Javascript 2 05.05.2009 11:32
установка позиции курсора или выделения в iframe mister_maxim Events/DOM/Window 5 18.04.2009 10:43