Google Chrome - Foro de ayuda

Error de Chrome con función writeln de JavaScript

Artcomm
7/06/14 7:07
Si ejecutas en una función JavaScript window.open y después quieres usar en esa nueva ventana la función writeln, recibes un reporte de error de Chrome diciéndote que la función no existe. Este es el ejemplo:

var nw=window.open();
nw.document.writeln("lo que sea que escribas aquí");

Te sale función indefinida. Obvio, no se puede ver la ventana.

El mismo código si funciona bien con Safari iPad y funciona bien con Chrome Android y Chrome PC .

Respuestas (3)

Dennis Tobar
8/06/14 16:22
Hola, 

Probé el código que enviaste y funciona perfectamente. La función no posee valores de retorno según la W3C, por lo cual el valor undefined es válido. ¿Qué versión de Chrome estás utilizando?.

Saludos!
Artcomm
12/06/14 11:21
La versión de Chrome debe irse con este correo (supongo). De todas maneras dice: Version 35.0.1916.153 m

La versión de mi iPad es igual, excepto que en vez de 153 dice 38. Pero no aparece que haya algo para renovar en la app store de apple.

Falla si usas esto: document.writeln("Un string","Otro string", "otro")

Pero solo falla en el iPad (como expliqué), no en otros ambientes.

Si solo tiene un string como argumento, sale correcto. Claro, esto ha quedado arreglado con este código:

var nw=window.open();
  nw.document.open();
  nw.document.write("<html><head><title>"+p.tit+" GLRep</title></head><body style='font-family:arial;background:#c5f5e6'><h4>Total de renglones: "+p.rows.length+"</h4>"+s+"</body></html>");
  nw.document.close();

Debes notar que preferí usar "write" y una sola cadena.
Dennis Tobar
12/06/14 11:41
Hola,

Gracias por compartir tu auto-respuesta. Me parece algo extraño que no soporte múltiple parámetros. ¿Es un error que sólo ocurre en este navegador?. Si es así, te animo a notificarlo en crbug.com donde los desarrolladores podrán trabajar sobre la solución de este problema.

Saludos