Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> parent.<parent JS function>, из созданного iframe в FireFox 
:(
    Опции темы
Mymik
Дата 3.1.2007, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 11
Всего: 78



Есть страница, обычный html в ней есть iframe который заполняется динамически.
из iframe нужно вызвать функция, которая определена в окне что его вызвал.

Main html файл
Код

<html>
<head>
    <script language="JavaScript" src="<called script file>" type="text/javascript"></script>
</head>
<body>
text text text text text text
<iframe id="<iframeID>"></iframe>
</body>
</html>


Сгенерированый html код для iframe
Код

<html>
<head>
</head>
<body>
    text text text text text text
    <input type="button" onClick="parent.<function in main file>">
</body>
</html>


Данный код работает только в IE и Opera, мне нужно чтобы это работало и в FF :о) как мне такое сделать ???

P.S. для заполнения iframe использовал document.getElementById(<iframeID>).contentWindow.document.body.innerHTML = "text";
Два дня искал :о) а вдруг кому нуно :о)

Добавлено @ 12:07 
Да, такой вариант как засунуть в сгенерированный код подключаемый файл с этим кодом не подходит...  Можно ведь как-то вызвать из этого iframe код который подключается... Если можно в Opera и IE значит должна быть возможность и в FF !!! smile 


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Mymik
Дата 3.1.2007, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 11
Всего: 78



У меня тут появилась идейка такая... а не запрещено ли это в браузере FF ???
У меня такая ситуация, что код сгенерирован и засунут в iframe. А из него идет обращение к родительскому контенту, и должно быть обращение к подгружаемому файлу, в котором храниться данная функция... не слишком ли это далеко ???


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
vasac
Дата 3.1.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

Репутация: 13
Всего: 36



Подгружаемый файл тут ни причем. Например следующий код без подгружаемого файла:

Код

<iframe id="ifi"></iframe>

Код

<script type="text/javascript">
 var ff = ( function() {
     alert( "FF" );
 } );
 window.onload = ( function() {
     var ifr = document.getElementById( "ifi" );
     ifr.contentWindow.document.body.innerHTML = '<input type="button" value="Ok" onClick="alert( [ parent, parent.ff ] )">';
 } );
</script>


IE видит, как parent, так и parent.ff и может вызвать данную функцию. А FF не видет далее parent. Т.е. видимо считает ифрейм и родительский документ принадлежащим разным доменам. Видимо, это из за динамической генерации контента в ифрейме.

А вот если сделать 
Код

<iframe id="ifr" src="./blank.htm"></iframe>

т.е. загрузить пустую страницу с того же домена, а потом уже ее динамически заменить, то все работает.
PM WWW   Вверх
Mymik
Дата 3.1.2007, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 11
Всего: 78



vasac, Большое спасибо :о) 
+ за такое доброе :о)


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0440 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.