Generador de código de ventana emergente
WebTodo se ejecuta en tu navegador: no se sube nada
Escribe una URL, ajusta el tamaño, la posición y unos cuantos interruptores, y obtén código para pegar. La mitad del valor está en decirte qué parámetros ya no hacen nada: `menubar`, `toolbar`, `location` y `status` los ignoran los navegadores modernos (ni Chrome ni Firefox dejan que un script oculte la barra de direcciones: eso es diseño antifraude), así que copiar un fragmento con «menubar=no» solo te hace creer que funcionó. La otra mitad son valores seguros: cuando `window.open` abre una página del mismo origen, la ventana nueva puede volver a través de `window.opener` y navegar la página que la abrió, así que el código generado añade `noopener` y limpia `opener`.
Funciones
- Genera código window.open o un enlace `<a target="_blank">`
- Tamaño, posición, redimensionado y barras de desplazamiento ajustables, con los valores fuera de rango acotados
- No emite los parámetros ignorados menubar / toolbar / location / status, y dice por qué
- Añade noopener por defecto y limpia `window.opener`
- Trata el compromiso de noopener de forma explícita: con él en la cadena de features, window.open devuelve null
- Escapa la URL como literal, así que las comillas que contenga no rompen la cadena
- Rechaza pseudourls javascript: / data: — esas no abren una página
- Salida de JavaScript o HTML con resaltado de sintaxis
Cómo se usa
- Escribe la URL que se va a abrir
- Ajusta el tamaño, la posición y los interruptores
- Elige la salida: código window.open o etiqueta de enlace
- Copia el resultado: está listo para usar
Preguntas frecuentes
- ¿Por qué no hay opción de «ocultar la barra de direcciones»?
- Porque los navegadores modernos no lo permiten. Los parámetros `location`, `menubar`, `toolbar` y `status` se ignoran en Chrome y Firefox: la barra de direcciones tiene que seguir visible, porque si no una página de fraude podría hacerse pasar por una interfaz de confianza sin barra. Es una decisión de seguridad, no pereza del navegador, así que la herramienta no los emite ni te da la ilusión de que podría.
- ¿Qué hace noopener y por qué viene activado?
- Una página del mismo origen abierta con `window.open` puede volver a través de `window.opener` y navegar la página que la abrió: el truco clásico del fraude, en el que se abre una ventanita y la página principal se convierte en un formulario de acceso. `noopener` corta esa referencia, y el código generado además pone `win.opener` a null, cerrando los dos extremos. Salvo que la ventana nueva necesite de verdad controlar a su apertora, no hay motivo para desactivarlo.
- Con noopener activado, ¿por qué no aparece `const win = window.open(...)`?
- Porque window.open devuelve null cuando la cadena de features contiene `noopener`. En ese caso `if (win) win.opener = null` nunca se ejecuta (inofensivo pero inútil) y `window.open(...).focus()` lanza una excepción al momento. Así que en ese modo el código generado no guarda ninguna referencia, y el comentario dice por qué: para que veas de un vistazo que esta forma no puede controlar la ventana.
- ¿Por qué no se abre ninguna ventana?
- Lo más habitual es el bloqueador de ventanas emergentes: solo se permite un `window.open` lanzado directamente por una acción del usuario (un clic o una tecla). Llamarlo dentro de `setTimeout`, al cargar la página o después de un `await` cuenta como no iniciado por el usuario y se bloquea: la función devuelve con normalidad y no aparece ninguna ventana. Llámalo directamente en el manejador del clic.
Herramientas relacionadas
Caja de cURL
WebConvierte un comando curl en código de siete lenguajes, lo desglosa en método, cabeceras y cuerpo, o construye un curl a partir de una petición HTTP.
HTML ↔ JS
WebEscapa HTML a un literal de cadena JS —comillas, saltos de línea y un `</script>` partido— o deshaz el escape y recupera HTML legible.
Probador de regex
TextoPrueba expresiones regulares en el navegador: resaltado en vivo, grupos de captura, vista previa de sustitución y código para cinco lenguajes.
Analizador de URL
WebDescompone una URL en esquema, host, puerto, ruta, parámetros y ancla, con cada parámetro en crudo y decodificado. Todo en tu navegador.
Analizador de UA
WebAnaliza un User-Agent: navegador, versión, sistema, tipo de dispositivo y motor, con las reglas que coinciden. Solo coincidencia de patrones.
Códigos de estado HTTP
WebConsulta un código de estado HTTP: significado, clase 1xx–5xx, usos típicos y trampas habituales. También busca por palabra clave. Todo local.