2012-03-16 5 views
3

main.php имеетJavascript Дочернее окно перенаправляет главное окно

<a href="redirect.php" target="_blank">open new window</a> 

затем redirect.php имеет

top.top.location.href='http://xx.com/index.html'; 

Когда я нажимаю на ссылку Открыть в новом окне, redirect.php шторами в новом окне и перенаправления http://xx.com/index.html. Проблема здесь: на этой странице код javascript заставляет закрыть это новое окно и перенаправить основное окно на http://xx.com/index.html.

Javascript код http://xx.com/index.html имеет:

try{ 
     if(opener) { 
      opener.location.href=this.location.href; 
      top.close(); 
     } 
    } 

Как я могу предотвратить главную страницу от закрытия у окна ребенка?

this is live example

+0

Поместите еще несколько усилий в свой вопрос. Это не имеет никакого смысла. – jessegavin

+0

Хорошо, я дал более подробную информацию. – baturalpdincdari

ответ

0

В коде (http://xx.com/index.html)

try{ 
    if(opener) { 
     opener.location.href=this.location.href; // Line-1 
     top.close(); // Line-2 
    } 
} 

1. Line-1 перенаправляет нож (родитель/главное окно) не закрывая его, свойство opener возвращает ссылку на окно, открывающее окно, поэтому, если вы удалите Line-1, он больше не будет перенаправлен.

2. Line-2 закрывает текущий (дочернего окна самого называют топ) окнами, так что если вы удалите эту строку не будет закрыто больше.

Просто удалите весь блок try, ваша проблема будет решена, и я смущен, почему вы не удалили эти строки самостоятельно, потому что вы знали, что эти коды несут ответственность за проблему, описанную в вашем вопросе.

+0

Думаю, я не мог правильно объяснить свою проблему. Я не могу изменить страницу (http://xx.com/index.html). Я связываю этот сайт с моим, и я хочу (http://xx.com/index.html) не закрывать мой. – baturalpdincdari

+0

Тогда попробуйте объяснить. –

 Смежные вопросы

  • Нет связанных вопросов^_^