with tab opener open new modal ejemplo javascript ipad safari

tab - window.opener javascript ejemplo



javascript window.open en safari (3)

El safari tiene un silenciador bloqueador de ventanas emergentes que no se muestra cuando se bloquea un enlace.

Para comprobar si el bloqueador de elementos emergentes está activo, vaya a la configuración de safari> seguridad> algo así como bloquear ventanas emergentes.

Para cruzarlo de una manera sencilla, dado que no puedo abrir una nueva ventana, aparece una alerta que muestra una ventana emergente bloqueada.

En mi caso, utilizo entradas selectas para abrir enlaces externos:

HTML

<select id="retailer" class="windowOpen retailer-submenu"> <option value="null">Select one</option> <option value="http://amazon.com">Amazon</option> <option value="http://ebay.com">eBay</option> </select>

Javascript

<script type=''text/javascript''> $(''select.windowOpen'').change(function(){ var url = $(this).val(); var open = window.open(url); if (open == null || typeof(open)==''undefined'') alert("Turn off your pop-up blocker!/n/nWe try to open the following url:/n"+url); }); </script>

El código para verificar si un pop-up está bloqueado es solo esto:

var open = window.open(''http://google.com''); if (open == null || typeof(open)==''undefined'') alert("Turn off your pop-up blocker!");

PD: el gatillo jquery no funcionó conmigo.

Me encontré con un problema al abrir una nueva ventana en safari (tanto en las versiones de ipad como de escritorio) que gira en torno al bloqueador de ventanas emergentes. Básicamente, he encontrado que si no se llama a window.open desde un evento de clic, safari bloqueará la ventana emergente.

El evento que está llamando a window.open actualmente se cambia de un cuadro de lista.

¿Hay alguna otra manera además de cambiar qué evento manejamos para engañar a safari y permitir una ventana emergente en este escenario? (el evento cambiado)



Puede manejar esto usando

document.location

en lugar de

window.open

Saludos, Vince