Создание свойств окна
Здравствуйте.
Есть такая ф-я:
function openPlayer(movie, title){
player = window.open('player.html', 'player', 'height=385,width=480,dependent,resizable');
player.movie = movie;
player.title = title;
};
Собственно непонятки с двумя последними строчками. В IE и FireFox'e в новом окне эти свойства доступны. А в Опере window.title == undefined. Подскажите, пожалуйста, в чем дело и как с этим бороться. |
путем серии опытов и гугла вот:
function openPlayer(movie, title){
player = window.open('player.html', 'player', 'height=385,width=480,dependent,resizable');
player.onload=function(){this.document.title=title;}//огнелис
player.document.title=title;//опера и осел
};
|
Странно, но у меня это нигде не работает.
Собственно интересует должны ли свойства title и movie быть доступны в новом окне? |
Кажется все дело в порядке.
Скрипт в дочернем окне обращается к свойствам раньше, чем скрипт в родительском окне успевает их создать. |
Цитата:
Цитата:
|
Цитата:
Видимо браузер возвращается к выпонению этого кода player.movie = movie; player.title = title; только после того как полностью загрузит дочернее окно (если в дочернем окне сделать кнопочку, по нажатию которой обращаться к свойствам, то они доступны) |
Вот еще информация к размышлению:
<html>
<head>
<title>launcher</title>
<script type = "text/javascript">
function openPlayer(){
open('player.html', '_blank', 'width=200,height=200');
alert('launcher');
};
</script>
</head>
<body>
<p onclick = "openPlayer();">launch</p>
</body>
</html>
<html>
<head>
<title>player</title>
<script type = "text/javascript">
alert('player');
</script>
</head>
<body>
<p>player</p>
</body>
</html>
-первое окошко запускает второе. Причем оба alert'а появляются одновременно, т.е. не блокируют друг друга. Похоже что код в разных окнах выполняется в разных потоках. |
|
x-yuri спасибо за ссылку. Статья в тему!
|
| Часовой пояс GMT +3, время: 01:37. |