В Navigator 2 этот код просто создает свойство opener объекта window. Затем уже не имеет значения, какую версию Navigator (поддерживающую JavaScript) использует пользова тель, так как свойство opener теперь указывает на исходное окно.
Если новое окно открывает следующее новое окно, цепочка остается пригодной, становясь просто на один шаг длиннее. Третье порожденное окно может запросить объекты в главном окне с помощью следующей ссылки: opener.opener . . . .
Правильная методика построения сценариев для третьего окна заключается в том, чтобы сохранить значение opener.opener в глобальной переменной. Тогда, если пользователь закроет второе окно, переменной можно будет воспользоваться как ссылкой на главное окно.
Если сценарий, генерирующий новое окно, находится во фрейме, свойство opener указывает на этот фрейм. Поэтому если новому окну необходимо взаимодействовать с родительским или ка ким-либо другим фреймом исходного окна, следует с особой тщательностью создавать ссылку на такой объект. Например, если новому окну требуется установить свойство checked флажка во фрейме, сестринском по отношению к исходному окну, полная ссылка будет выглядеть так:
opener.parent.sisterFrameName.document.formName.checkboxName.checked
Создание ссылки следует выполнять особо внимательно, шаг за шагом, отслеживая, как сценарий "проходит" из исходной точки в точку назначения.
* Смотрите пример использования opener