Большинство веб_приложений исполняются в единственном окне, хотя при этом могут открывать маленькие вспомогательные окна. Тем не менее вполне допус_ тимо создавать приложения, которые используют в своей работе два или более фрейма или окна, обеспечив взаимодействие между этими фреймами или окна_ ми с помощью JavaScript_кода. В этом разделе рассказывается, как это реализо_ вать на практике.1
Прежде чем приступить к обсуждению темы создания веб_приложений с не_ сколькими окнами или фреймами, есть смысл еще раз вспомнить положения по_ литики общего происхождения, описываемые в разделе 13.8.2. Данная полити_ ка позволяет JavaScript_сценарию взаимодействовать с содержимым только тех документов, которые получены с того же самого сервера, что и документ с этим сценарием. Любые попытки прочитать содержимое или свойства документа, по_ лученного с другого веб_сервера, окажутся неудачными. Это значит, например, что можно написать такую программу на языке JavaScript, которая будет ин_ дексировать собственный веб_сайт и составлять список ссылок в документах, представленных на этом сайте. Однако невозможно расширить возможности этой программы таким образом, чтобы она могла следовать по этим ссылкам и индексировать другие сайты: попытки получить список ссылок из докумен_ тов, расположенных за пределами сайта, окажутся неудачными. Программный код, который не работает из_за ограничений, накладываемых политикой общего происхождения, вы найдете в примере 14.7.