Фреймів і вікна

Чому document.write () відкриває нове вікно замість того, щоб писати в поточному вікні?

Як тільки поточний документ завершив завантаження, ви абсолютно не можете використовувати document.write () для зміни вмісту. Поведінка document.write () за умовчанням, як тільки поточний документ виконав завантаження, має відкрити нове вікно типу text / html, і направити ваш висновок в те вікно.

Запам'ятайте, що єдина можливість для вас змінити відображення тільки що завантажений об'єкт документа - це:

Як я можу завантажити фрейм без додаткових файлів?

Як я можу посилатися на функції в іншому фреймі?

Найкраще визначати функції всередині одиночного документа, батьківського frameset-документа, позначаючи HTML документ, який визначає frameset (s). Потім функція може бути викликана, використовуючи такий вираз

Ви також можете виконувати функції в інших фреймах, використовуючи

Як я можу змінити два фрейми одночасно одним клацанням?

Зробити функцію: Потім ви викликаєте цю функцію через будь-який об'єкт, який підтримує подія onClick: Зауваження: Якщо одна зі сторінок, яку ви бажаєте змінити має в собі цю функцію, ви повинні помістити setTimeout () в команді, яка змінює локальну сторінку: Таким чином , всі ваші інші звернення виконуються перш, ніж ви закриєте цю сторінку. Природно, ваші специфічні потреби будуть відрізнятися, а це - лише пропозиція.

Як може код в одному фреймі визначити, чи закінчив завантаження код в інших фреймах в моєму frameset'е?

Часто, при роботі з багато-фреймовимі документами, необхідно мати доступ до даних в об'єктах, які належать фреймам "брата". Здається, що протягом ініціалізації frameset'а, поки дочірні фрейми завантажуються, фрейм A запрошує дані з фрейма B тільки, щоб дізнатися, що фрейм B не закінчив завантаження або виконання коду. Ця проблема синхронізації часто призводить до помилок, подібним "object has no property indexed by zero" або "parent.frameB.variableName is undefined".

Щоб вирішити це, можна виконати onLoad обробники в frameset так, щоб будь-який необхідний перехресно-граничний код виконувався лише після того, як підготовлений весь набір документів:

frameset.html: frameA.html: frameB.html: Якщо все йде добре, ви побачите повідомлення з фрейма A, потім B, потім з frameset, так як подія frameset onLoad обробляє файли після того як все фреймів завантажаться.

OnLoad зауваження: Деякі Netscape клієнти помилково викликають функцію frameset onLoad перед кожною дочірньою функцією документа onLoad.

Чому мій виклик window.open () не відображує тип вікна і розмір, який я визначаю?

Важливо зауважити, що третій параметр для функції window.open () може не містити whitespace:

Ви можете використовувати обробник події onUnLoad об'єкта вікна.

Як я можу керувати розміщенням нового вікна, використовуючи window.open ()?

Як я можу закрити вікно без появи підказки попередження?

Повідомлення "close window" не з'являтися якщо:
  • Вікно, яке ви намагаєтеся програмно закрити було програмно відкрито вашим скриптом або документом вашого скрипта або
  • Вікно, яке ви намагаєтеся закрити - перший документ, завантажений в цьому вікні (наприклад, воно було створено зв'язком з попередньо невикористаним target, або всі документи були завантажені у вікні, використовуючи location.replace ()).
  • У деяких браузерах спрацьовує такий Хук:

У мене є спливаюче вікно для меню. Як я можу при виборі з цього меню відкрити документи в повноекранному вікні?

У заголовку початкового HTML документа помістіть пропозицію window.name. Потім у вікні відкрийте пропозиції в меню, використовуйте той же самий ім'я.

Чи можу я багаторазово використовувати один і той же спливаюче вікно на різних сторінках?

Так, використовуйте той же самий ім'я кожного разу у відкритому вікні. Розмір вікна повинен бути той же самий. Коли ви хочете закрити спливаюче вікно, просто відкрийте його перед закриттям.

Як відкрити сторінку в повноекранному режимі, як при натисканні клавіші F11?

Працює тільки в IE, в інших браузерах просто максимізує сторінку.

Як звернутися до скрипту (об'єкту) в іншому Фремо або вікні?

Нехай, наприклад, ваше вікно розбите на два фрейми: лівий і правий. Нехай лівий фрейм ви назвали LEFT, а правий - RIGHT. Припустимо, скрипт у вас працює в лівому фреймі, а в правому є форма ANKETA, а в ній - поле TIME. І ось вам дуже хочеться, щоб значення поля TIME стало одно D. Звертаємося з лівого фрейму в правий:

Відповідно, з правого фрейма в лівий ми прийдемо так:

Якщо ви захочете переказати з лівого фрейму завантажити новий документ в правий фрейм, шлях буде дещо іншою:

Ось, наприклад, функція, яка, виконуючись в лівому фреймі, завантажує в правий фрейм сторінку з анкетою і заздалегідь встановлює курсор введення в поле NAME:

Було створено вікно з внутрішнім ім'ям WIZARD, і в ньому запустився майстер вибору курсу. Вся ця трійця може наперекрест обмінюватися інформацією, встановлювати один у одного значення полів - в загальному, спілкуватися. Наприклад, шлях з вікна майстра в правий фрейм такий:

На що замінити невалідний target = _blank?

Як заборонити завантаження мого сайту у розіграші?

Вставте цей код в заголовок своєї сторінки:

Параметри (атрибути) window.open