JavaScript для мага


Динамическое создание документов - часть 2


В скрипте мы определяем переменную myWin. И с ее помощью можем получать доступ к новому окну. Обратите пожалуйста внимание, что в данном случае мы не можем воспользоваться для этой цели именем окна (displayWindow). После того, как мы открыли окно, наступает очередь открыть для записи объект document. Делается это с помощью команды:

 

  // открыть объект document для последующей печати

  myWin.document.open();

 

Здесь мы обращаемся к open() - методу объекта document. Однако это совсем не то же самое, что метод open() объекта window! Эта команда не открывает нового окна - она лишь  готовит document к предстоящей печати. Кроме того, мы должны поставить перед document.open() приставку myWin, чтобы получить возможность писать в новом окне.

В последующих строках скрипта с помощью вызова document.write() формируется текст нового  документа:

 

  // генерировать новый документ

  myWin.document.write("<html><head><title>On-the-fly");

  myWin.document.write("</title></head><body>");

  myWin.document.write("<center><font size=+3>");

  myWin.document.write("This HTML-document has been created ");

  myWin.document.write("with the help of JavaScript!");

  myWin.document.write("</font></center>");

  myWin.document.write("</body></html>");

 

Как видно, здесь мы записываем в документ обычные тэги языка HTML. То есть мы фактически генерируем разметку HTML! При этом Вы можете использовать абсолютно любые тэги HTML.

По завершении этого мы обязаны вновь закрыть документ. Это делается следующей командой:

 

  // закрыть документ - (но не окно!)

  myWin.document.close(); 

 

Как я уже говорил, Вы можете не только динамически создавать документы, но и по своему выбору размещать их в в том или ином фрейме. Например, если Вы получили два фрейма с именами frame1 и frame2, а теперь во frame2 хотите сгенерировать новый документ, то для этого в frame1

Вам достаточно будет написать следующее:

 

parent.frame2.document.open();

 

parent.frame2.document.write("Here goes your HTML-code");

 

parent.frame2.document.close();

 




Начало  Назад  Вперед



Книжный магазин