2012-05-23 25 views
9

¿Hay alguna manera de posicionar una ventana abierta con jQuery en la esquina superior derecha de la pantalla?Colocación de una ventana en la pantalla

Este es el código que tengo en este momento:

$(document).ready(function() { 
    $("#dirs a").click(function() { 
     // opens in new window 
     window.open(this.href, "customWindow", "width=960, height=1040"); 
     return false; 
    }); 
}); 

Y quiero que se abra en la esquina superior derecha de la pantalla, similar a la forma en que aparecería si "roto" con Windows Aero Snap In Vista o superior. ¿Hay una manera de hacer que esto suceda?

Por cierto, esta es una página simple que solo usaré, y solo la usaré en Chrome en un monitor de 1920x1080, por lo que no tiene que tener elementos sofisticados para ajustar para diferentes navegadores o pantallas tamaños.

Respuesta

14

Si lo quiere en la parte superior derecha no se necesita esta?

window.open(this.href, "customWindow", "width=960, height=1040, top=0, left=960"); 
+0

Oh, dang, simplemente agregando que left = 960 lo arregló. Gracias, eso es perfecto :) – JacobTheDev

+1

Lo sentimos, la cima debería ser 0, no 40!Se corrigió – nmford

+0

+1 por un viejo pero bueno –

1
$("#dirs a").click(function(e) { 
    e.preventDefault(); 
    var popupWidth = 960; 
    var leftPos = screen.width - popupWidth; 

    window.open(this.href, "customWindow", "width=" + popupWidth + ", height=1040, top=0, left=" + leftPos); 
}); 

Aquí hay un example.

1
window.open(this.href, "customWindow", "width=960, height=1040, top=0, left=0"); 

Otras propiedades de la ventana:

Property   Default value Description 
width   auto   specifies width of the new window in pixels 
height   auto   height of the window in pixels 
top    auto   specifies window position 
left    auto   specifies window position 
directories  no    should the directories bar be shown? (Links bar) 
location   no    specifies the presence of the location bar 
resizable  no    specifies whether the window can be resized. 
menubar   no    specifies the presence of the menu bar 
toolbar   no    specifies the presence of the toolbar 
scrollbars  no    specifies the presence of the scrollbars 
status   no    specifies the presence of the statusbar 
+0

Gracias por la copia de mi respuesta – Marko

+0

No aparece para trabajar, al menos no en Cromo. EDITAR: Funciona bien en Firefox. Tal vez lo use solo si no recibo una mejor respuesta. – JacobTheDev

+0

@Marko - ¿de verdad ?! - solo hay una respuesta correcta y publicamos al mismo tiempo –

1

Esta es la correcta ... Primero debe calcular el ancho de la pantalla.

var leftPos = screen.width - 960; 
window.open(this.href, "customWindow", "width=960, height=1040, top=40, left="+leftPos+"); 
+0

"esta es una página simple que solo usaré, y solo la usaré en Chrome en un monitor de 1920x1080" – nmford

4

JavaScript window.open acepta muchos parámetros. Para su caso particular, arriba y a la izquierda deberían ser suficientes.

ver la obra Fiddle Example!

La sintaxis

window.open([URL], [Window Name], [Feature List], [Replace]); 

la lista de características

enter image description here

El ejemplo de trabajo para adaptarse a su nee ds

<script type="text/javascript"> 
<!-- 
function popup(url) 
{ 
var width = 960; 
var height = 1040; 
var left = screen.width - 960; 
var top = 0; 
var params = 'width='+width+', height='+height; 
params += ', top='+top+', left='+left; 
params += ', directories=no'; 
params += ', location=no'; 
params += ', menubar=no'; 
params += ', resizable=no'; 
params += ', scrollbars=no'; 
params += ', status=no'; 
params += ', toolbar=no'; 
newwin=window.open(url,'customWindow', params); 
if (window.focus) {newwin.focus()} 
return false; 
} 
// --> 
</script> 

<a href="javascript: void(0)" 
    onclick="popup('popup.html')">Top Right popup window</a> 

Nota: Esto calcular el ancho de la pantalla para ajustar la left correctamente.

tener en cuenta que está utilizando una ventana con una gran altura, por lo general, las pantallas son más grandes que más alto ...

+0

arriba y a la izquierda ya no parecen funcionar. – chovy

Cuestiones relacionadas