2010-12-15 13 views
3

Ich möchte ein Fenster in einem neuen Tab öffnen, aber wenn ich möchte, dass diese Opener-Seite aktiv sein soll, nicht die neue. Wie kann ich das tun ... Vielen DankFensteröffner Fokus oder aktiv

mein Code ist so etwas wie diese:

<script language="javascript"> 
    window.open("http://www.google.ro"); 
    window.opener.location.focus(); 
    </script> 
+0

Nur: Der obige Code in das übergeordnete Fenster ist, oder das Kindfenster? –

+0

ist im übergeordneten Fenster. Auf meiner Seite habe ich Banner, wenn ich darauf klicke, habe ich eine Detailseite darüber, und die Kunden wollen, wenn sie auf das Banner klicken, dann öffnen Sie meine Detailseite und ihre Website, aber ich möchte auf meiner Website bleiben. – cosy

Antwort

4

Um den Fokus auf das neue Fenster zu geben (aber Sie wollen nicht, und es wird wahrscheinlich Fokus hat Standardeinstellung):

var newWindow = window.open("http://www.google.ro", '_blank'); 
newWindow.focus(); 

glaube ich nicht, es ist möglich, den Fokus von dem neu geöffnet Tabs zu stehlen. Ich habe keine offizielle Erklärung darüber gefunden, aber alle Artikel, die ich zu diesem Thema gefunden habe, sprechen davon, dass Sie Ihren Browser so konfigurieren, dass er standardmäßig Tabs ohne Fokus öffnet.

Die einzige „Lösung“ ich tun konnte mit dieser ist:

window.open("http://google.com", "_blank"); 
window.alert('Hello there! This is a message that annoys you, the user.'); 

Beachten Sie, dass es möglich ist, Fokus zu verschieben, wenn Pop-ups öffnen.

Learn more about the window object.


Off topic Hinweis: Diese Antwort zu bekommen 2 bis Stimmen in seiner ursprünglichen völlig falschen Form bestätigt meinen Verdacht, dass die meisten, so dass Benutzer nur blind abstimmen und je nachdem, wie viel Ansehen der Person, die Antworten hat.

+2

Ich denke, das OP will ein Pop-Under. –

+0

Man nicht das newWindow, ich möchte das Opener-Fenster auf es konzentrieren – cosy

+0

In meinem Fall ist nicht auf der gleichen Domain ... Ahh – cosy

3

Dies funktioniert für mich ...

var newWindow = window.open('http://www.google.ro', '_blank', 'height=300,width=300,menubar=0,status=0,toolbar=0', false); 

window.focus(); 
+0

Ich möchte das neue Fenster in einem neuen Tab öffnen, nicht so ... – cosy

+0

Das funktioniert auch für mich, und ich dachte, das OP würde danach fragen - öffne einen neuen Tab, aber bleib im Fokus auf dem aktuellen Tab. * Allerdings * Ich sehe einen Blitz, wo die neue Registerkarte öffnet, nimmt sehr kurz den Fokus, und dann die ursprüngliche Registerkarte wieder den Fokus. Irgendwie in der Nähe? – okyanet

1

Um den Fokus auf den Opener-Fenster zurück zu geben, versuchen Sie zur Klärung mit window.focus(window.name); statt window.opener.location.focus();