Форум программистов, компьютерный форум, киберфорум
Наши страницы
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Holsteng
47 / 10 / 2
Регистрация: 26.03.2012
Сообщений: 246
1

Изменение страницы загрузки во фрейме

12.05.2012, 13:05. Просмотров 1725. Ответов 3
Метки нет (Все метки)

Всем привет!

Хочу при наступлении определенного события, изменить страницу загрузки во фрейм. А конечная цель вот такая. Пользователь вводит имя и пароль во фрейм, где два текстовых поля, потом в этот фрейм загружается страница, где указано имя пользователя.

Я пытаюсь с дочернего фрейма достучаться в другой.
Код
parent.frames["Registration"].src="Text.html";
Заранее спасибо!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2012, 13:05
Ответы с готовыми решениями:

Проверка на открытие страницы во фрейме
Как проверить, открыта ли страница во фрейме? Я пробовал так: function...

Изменение Javascript переменной в другом фрейме! Помогите плз!
Есть 2 фрейма top и menu. В меню по клику надо изменить variable из фрейма...

Перезагрузка отдельной картинки страницы, после загрузки страницы
Возникла необходимость перезагрузки отдельной картинки страницы после вывода...

Изменение содержания страницы без перезагрузки страницы
Всем привет, подскажите как сделать изменение содержания страницы без...

"Обрезать" верх страницы во фрейме
Нужно вставить страницу - например 1.html (она на другом сервере) во фрейм...

3
kalabuni
Нарушитель
3310 / 2623 / 629
Регистрация: 18.04.2012
Сообщений: 7,905
12.05.2012, 13:35 2
1. Только MSIE понимает равнозначно и window.frames, и document.frames, все прочие браузеры работают исключительно с window.frames

Код
+------------------------------+ 
|                окно главное  | Вариант 1: Скрипт написан в главном окне.
|  +------------+              | а) к элементу главного окна обращаемся так:   
|  | (и)фрейм   |              |    document.getElementById ('id_элемента')
|  | name="FR1" |              | б) к элементу во фрейме/ифрейме FR1 обращаемся так:
|  |            |              |    window.frames.FR1.document.getElementById ('id_элемента')
|  |            |              | в) к элементу во фрейме/ифрейме FR2 обращаемся так:
|  |            |              |    window.frames.FR2.document.getElementById ('id_элемента')
|  +------------+              |
|                              | Вариант 2: Скрипт написан во фрейме/ифрейме FR1.
|              +------------+  | а) к элементу главного окна обращаемся так: 
|              | (и)фрейм   |  |    top.document.getElementById ('id_элемента')
|              | name="FR2" |  | б) к элементу во фрейме/ифрейме FR1 обращаемся так:
|              |            |  |    document.getElementById ('id_элемента')
|              +------------+  | в) к элементу во фрейме/ифрейме FR2 обращаемся так: 
|                              |    top.frames.FR2.document.getElementById ('id_элемента')
+------------------------------+
Вариант 3: Скрипт написан во фрейме/ифрейме FR2.
а) к элементу главного окна обращаемся так: top.document.getElementById ('id_элемента')
б) к элементу во фрейме/ифрейме FR1 обращаемся так: top.frames.FR1.document.getElementById ('id_элемента')
в) к элементу во фрейме/ифрейме FR2 обращаемся так: document.getElementById ('id_элемента')
Примечания:
1. Везде вместо top можно прописывать parent, что будет более правильным. Ибо вдруг главное окно кто-то поместит внутрь своего фрейма/ифрейма и "самым верхним" (top) окном станет не "главное окно", а это самое новое.
2. name фрейма (ифрейма) можно оформлять строкою в квадратных скобках, т.е., например, так:
window.frames ['FR1'].document.getElementById ('id_элемента')
3. Разумеется, всякую строку можно сделать "составной", т.е. написать можно и так:
window.frames ['FR1'].document.getElementById ('id_элемента')
и так:
window.frames ['F' + 'R' + '1'].document.getElementById ('i' + 'd' + '_' + 'элем' + 'ент' + 'а')

2. Кроме того, обращаться к элементу, который находится во фрейме/ифрейме можно только после полной загрузки фрейма/ифрейма.
Потому фрейм/ифрейм надо снабдить инструкцией, коя обработает событие onload этого фрейма/ифрейма, и либо запустит нужную функцию другом окне (фрейме/ифрейме), либо просто изменит какой-то глобальный флаг, чтобы потом, обращаясь, можно было проверить - загружена ли уже страница во фрейм/ифрейм.

3. Самое главное - всё это работает в браузерах только в одном случае: если все страницы (в главном окне, во всех фреймах/ифреймах) - с одного доменного имени.
Для примера: поместив в ифрейм httр://google.com, вы из других окон/фреймов/ифреймов доступа к сайту Гугля никогда не получите. Работать можно только со своими собственными страницами.

Для работы с "чужими" страницами во фреймах/ифреймах надо использовать небраузерные способы.
Самый простой способ для этого - HTAs - пишете обычный HTML+CSS+Javascript и можете делать всё, что хочется с любыми файлами.
Только вот расширение этого вашего файла должно быть не *.htm или *.html, а *.hta
1
Holsteng
47 / 10 / 2
Регистрация: 26.03.2012
Сообщений: 246
12.05.2012, 13:57  [ТС] 3
Cпасибо большое.
0
Sergey_rus
0 / 0 / 0
Регистрация: 11.04.2017
Сообщений: 5
11.04.2017, 14:24 4
Огромное тебе спасибо.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2017, 14:24

Анимация загрузки страницы
Есть php скрипт, который очень долго обрабатывает информацию, около 15-20 сек....

Переход к якорю после загрузки страницы
В процессе генерации страницы динамически формируются, например, <a...

Сортировка сразу после загрузки страницы.
Есть скрипт сортировки таблиц все отлично работает, но сортирует только по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru