me gustaría tener un botón en una página web con el siguiente comportamiento:En Google Chrome, ¿cómo traigo una ventana emergente existente al frente usando javascript desde la ventana principal?
- En el primer clic, abrir una ventana emergente.
- En clics posteriores, si la ventana emergente aún está abierta, simplemente llévela al frente. Si no, vuelve a abrir.
El código siguiente funciona en Firefox (Mac & Windows), Safari (Mac & Windows), e IE8. (Todavía no he probado IE6 o IE7.) Sin embargo, en Google Chrome (ambos Mac & Windows), los clics posteriores no pueden mostrar el mensaje emergente existente al frente como se desea.
¿Cómo puedo hacer que esto funcione en Chrome?
<head>
<script type="text/javascript">
var popupWindow = null;
var doPopup = function() {
if (popupWindow && !popupWindow.closed) {
popupWindow.focus();
} else {
popupWindow = window.open("http://google.com", "_blank",
"width=200,height=200");
}
};
</script>
</head>
<body>
<button onclick="doPopup(); return false">
create a pop-up
</button>
</body>
Antecedentes: Estoy reiteró la solicitud this question específicamente para Google Chrome, como creo que mi código resuelve el problema, al menos para otros navegadores modernos y IE8. Si hay una etiqueta preferida para hacerlo, házmelo saber.
Parece que se informó de este problema ~ hace 1.5 años: http://code.google.com/p/chromium/issues/detail?id=1674 – brahn