Роман Б.
42 повідомлення
#15 років тому
Вот такой код работает в Опере 10.10 но не работает в 10.50

<script>
var win1 = false;

function w_open()
{
win1 = window.open('http://localhost/');
}

function w_status()
{
if (win1.closed == false)
{
alert ('сейчас окно открыто');
}
}

function w_close()
{
win1.close();
alert ('закрылось!');
}

w_open();
setTimeout(w_status, 1000);
setTimeout(w_close, 5000);
</script>


Возникает ошибка "нарушение безопасности"... По событию onclick = "w_close();" такая же ошибка... )))

Я подумал, что это сделано для того чтобы левые скрипты не смогли управлять открытыми окнами, попробовал сделать управление через класс

function window_rul()
{
this.win = false;

this.open = function(url)
{
this.win.open(url);
}
this.close = function()
{
this.win.close();
}
}


но даже так не работает...

Кто-нибудь знает, как решить эту задачу в Опере 10.50 или это баг оперы?
Роман Б.
42 повідомлення
#15 років тому
Уточню, что в консоле ошибок оперы появляется: 'security violation'
Роман Б.
42 повідомлення
#15 років тому
Еще уточнение, если адрес нового окна имеет такой же домен что и родительское, то ошибки не возникают.... следлвательно это не баг, а ужесточение безопасности
Владимир М.
578 повідомлень
#15 років тому
Вот вы сами себе и ответили ))