У меня есть страница, которая должна открывать всплывающее окно в другом домене. Если щелкнуть ссылку на исходной странице, я сделаю упор на нее, чтобы сфокусироваться на новом окне, если оно открыто, и открыть его, если это не так.
Этот код работает в Chrome, но я ничего не понимаю для Firefox или IE.
var win=null;
function pop(){
if(win!== null && !win.closed) {
//If it's already open, just focus on it
win.focus();
}else {
//Otherwise, make a new window and go to it
win= window.open("http://google.com");
}
}
Демо здесь : http://jsfiddle.net/T7PUN/
Есть идеи, как этого добиться во всех браузерах?
EDIT
Это не кажется лучшим решением, но оно работает. Chrome поддерживает фокусировку на окне, в то время как другие браузеры этого не делают. Таким образом, для другого браузера закрытие и повторное открытие окна, кажется, работает и имеет тот же конечный результат. Я знаю, что это не самое большое.
var win=null;
function pop(url){
if(win!== null && !win.closed) {
if(navigator.userAgent.indexOf("Chrome")>0) {
//If it's already open, just focus on it
win.focus();
}else {
//LAME
win.close();
win= window.open(url);
}
}else {
//Otherwise, make a new window and go to it
win= window.open(url);
}
}