Duda javascript - Creación de ventana nueva

Hola, tengo la siguiente duda respecto a la creación de páginas secundarias:
Al pinchar sobre una imagen, quiero que se me abra otra ventana con la imagen maximizada al tamaño de la imagen y con el titulo que yo quiera. Me funciona bien, excepto el titulo que me sale, es la dirección de la imagen, ¿cómo puedo obligar a que me ponga lo que yo quiera? Al javascript le paso la url de la imagen y el titulo que yo quiero.
Gracias, espero su respuesta.
Respuesta
Lo que yo haría es en lugar de hacer referencia a la URL de la imagen crear una página que contenga la imagen con el titulo que quieras.

4 respuestas más de otros expertos

Respuesta
1
<!-- Principio Script -->
var winName="Pon aki el nombre de la ventana"
function Abrir_Ventana(theURL,w,h) {
var windowprops ="top=0,left=0,toolbar=no,location=no,status=no, menubar=no,scrollbars=no, resizable=no,width=" + w + ",height=" + h;
window.open(theURL,winName,windowprops);
}
<!-- Fin Script -->
Por ejemplo prueba este script solo le tienes que pasar la url con la foto maximizada y el width y el height, ademas wn windowprops puedes customizar las demás propiedades de ventana.
Siu tienes alguna duda más por favor no dudes en preguntar.
Gracias por responderme, dirás que soy un poco pesado mandándote tantos mails, pero llevo intentándolo corregir el problema varios días, y es más cabezonería que otra cosa sacarlo, yo he aprendido más javascript que nunca en estos días, yo tengo muy poca idea :) Te inserto los códigos que pruebo, Te inserto las dos pruebas:
1)Cuando me abre la ventana nueva me pone la url de la imagen, no el titulo que yo quiero, y no se por que:
______________________________
<html>
<head>
<title>Prueba</title>
<script language=javascript>
var winName="Ventanaaaaaaa";
function Abrir_Ventana(theURL,w,h)
{
var windowprops ="top=0,left=0,toolbar=no,location=no,status=no, menubar=no,scrollbars=no, resizable=no,width=" + w + ",height=" + h;
window.open(theURL,winName,windowprops);
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:Abrir_Ventana('foto.jpg',150,200);"><img src="foto.jpg" width="25" height="25" border="0"></a>
</body>
</html>
__________________________________
2)La primera vez que se ejecuta no abre la foto pero si pone el titulo, cuando la vuelves a ejecutar si abre la foto y hace todo bien. Pruébalo cambiando el nombre del archivo de la foto, veras como falla:
<html>
<head>
<title>Untitled Document</title>
<script language=javascript>
var win=null;
function mostrarimagen(url_imagen,titulo){
var img = new Image();
img.src = url_imagen;
win=window.open('','','width='+img.width+',height='+img.height+',scrollbars=no,resizable=1,toolbar=0');
win.document.write ('<html>\n');
win.document.write (' <head>\n');
win.document.write (' <title>'+titulo+'</title>\n');
win.document.write (' </head>\n');
win.document.write (' <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">\n');
win.document.write (' <img src="' + url_imagen + '" height='+img.height+' width='+img.width+'>\n');
win.document.write (' </body>\n');
win.document.write ('</html>\n');
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:mostrarimagen('foto.jpg','El titulo que yo quiera');"><img src="wtc2.jpg" width="74" height="62" border="0"></a>
</body>
</html>
_______________________________
Gracias de antemano, y perdona las molestias.
Ayer creo que no entendí muy bien tu pregunta, en el primer caso jamas te puede aparecer el titulo en la ventana del navegador pues TITLE es propiedad de un página html no de un archivo jpg cuando el explorer (en este caso) abre la foto reconoce el tipo MIME jpg y no reconoce la propiedad TITLE así que no lo intentes por ahí.
La segunda opción es totalmente valida y creo que funciona en todos los casos, pues generas el html, (eso funciona quizaas tengas una version antigua del explorer, yo lo he probado es más uso este método para generar mensajes de error en mis páginas).
Lo que te aconsejaría es que te dejases de historias y uses una página por ejemplo en ASP o PHP entonces al llamar a la url le pasarías el parámetro con el nombre de la foto tal que :
mostrarimagen('ejemplo.asp?=imagen=foto2.jpg','El titulo que yo quiera')
Esta manera no es muy difícil y tampoco tendrás que aprender ASP ni nada solo añadir en el fichero ejemplo.asp esta linea donde tengas el código para insertar la imagen.
<% Response.Write("<IMG src='" & rs.Fields("Id") & "'>") %>
Esta es la manera más profesional de hacerlo y la más aconsejable pues ese fichero ejemplo.asp es fácilmente configurable.
Bueno espero que mi respuesta haya sido útil. Y nada si necesitas algo más, pues aquí estoy.
Respuesta
1
Mejor creas una nueva página en html y dentro de allí colocas tu imagen!
Y en el tag <title> </title> colocas el titulo que quieras
Esto solucionara tu problema!
Gracias por responderme, pero en vez de una página me gustaría abrir una foto. Te inserto los códigos que pruebo, Te inserto las dos pruebas:
1)Cuando me abre la ventana nueva me pone la url de la imagen, no el titulo que yo quiero, y no se por que:
______________________________
<html>
<head>
<title>Prueba</title>
<script language=javascript>
var winName="Ventanaaaaaaa";
function Abrir_Ventana(theURL,w,h)
{
var windowprops ="top=0,left=0,toolbar=no,location=no,status=no, menubar=no,scrollbars=no, resizable=no,width=" + w + ",height=" + h;
window.open(theURL,winName,windowprops);
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:Abrir_Ventana('foto.jpg',150,200);"><img src="foto.jpg" width="25" height="25" border="0"></a>
</body>
</html>
__________________________________
2)La primera vez que se ejecuta no abre la foto pero si pone el titulo, cuando la vuelves a ejecutar si abre la foto y hace todo bien. Pruébalo cambiando el nombre del archivo de la foto, veras como falla:
<html>
<head>
<title>Untitled Document</title>
<script language=javascript>
var win=null;
function mostrarimagen(url_imagen,titulo){
var img = new Image();
img.src = url_imagen;
win=window.open('','','width='+img.width+',height='+img.height+',scrollbars=no,resizable=1,toolbar=0');
win.document.write ('<html>\n');
win.document.write (' <head>\n');
win.document.write (' <title>'+titulo+'</title>\n');
win.document.write (' </head>\n');
win.document.write (' <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">\n');
win.document.write (' <img src="' + url_imagen + '" height='+img.height+' width='+img.width+'>\n');
win.document.write (' </body>\n');
win.document.write ('</html>\n');
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:mostrarimagen('foto.jpg','El titulo que yo quiera');"><img src="wtc2.jpg" width="74" height="62" border="0"></a>
</body>
</html>
_______________________________
Gracias de antemano.
En la primera estas usando el explorador como visualizador de imágenes por eso que solo pone el nombre del archivo!
En la segunda estas creando un nuevo HTML
como te dije con anterioridad
Probé el código y me funciona perfectamente
Mira que pasa debe ser la version del navegador!
Gracias!
A mi la segunda, donde muestras la foto en una nueva página html, me sale a la segunda vez que pincho en el enlace, no se si sera por mi navegador como dices, o por fallo, no se. Cambio el nombre de la imagen por foto2.jpg y me falla, pero vuelvo a pinchar y funciona, ¿a ti no te ocurre eso? ¿Qué navegador tienes? Yo el explorer 5.
Gracias.
Yo tengo 5.5, debe ser el navegador porque ya probé tu código y me corre bien!
Respuesta
1
window.open("pagina.html","titulo","width=430,height=250,top=0,left=5","scrolling=auto");
Donde pone titulo tu pones el titulo que quieras para tu página.
El resto de las cosas me imagino que ya sabes lo que son.
Espero haberte ayudado, si tienes alguna duda pues me dices
Neogeo
Gracias por responderme, pero en vez de una página quiero abrir una foto. Te inserto los códigos que pruebo, Te inserto las dos pruebas:
1)Cuando me abre la ventana nueva me pone la url de la imagen, no el titulo que yo quiero, y no se por que:
______________________________
<html>
<head>
<title>Prueba</title>
<script language=javascript>
var winName="Ventanaaaaaaa";
function Abrir_Ventana(theURL,w,h)
{
var windowprops ="top=0,left=0,toolbar=no,location=no,status=no, menubar=no,scrollbars=no, resizable=no,width=" + w + ",height=" + h;
window.open(theURL,winName,windowprops);
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:Abrir_Ventana('foto.jpg',150,200);"><img src="foto.jpg" width="25" height="25" border="0"></a>
</body>
</html>
__________________________________
2)La primera vez que se ejecuta no abre la foto pero si pone el titulo, cuando la vuelves a ejecutar si abre la foto y hace todo bien. Pruébalo cambiando el nombre del archivo de la foto, veras como falla:
<html>
<head>
<title>Untitled Document</title>
<script language=javascript>
var win=null;
function mostrarimagen(url_imagen,titulo){
var img = new Image();
img.src = url_imagen;
win=window.open('','','width='+img.width+',height='+img.height+',scrollbars=no,resizable=1,toolbar=0');
win.document.write ('<html>\n');
win.document.write (' <head>\n');
win.document.write (' <title>'+titulo+'</title>\n');
win.document.write (' </head>\n');
win.document.write (' <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">\n');
win.document.write (' <img src="' + url_imagen + '" height='+img.height+' width='+img.width+'>\n');
win.document.write (' </body>\n');
win.document.write ('</html>\n');
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<a href="javascript:mostrarimagen('foto.jpg','El titulo que yo quiera');"><img src="wtc2.jpg" width="74" height="62" border="0"></a>
</body>
</html>
_______________________________
Gracias de antemano.
En el caso 2 le pasas un titulo como parámetro pero luego dentro de la función que lo recibe, cuando hacer el window. Open no se lo pasas, dejas comillas y es posible que al no pasarle ningún titulo te coloque como tal la url de la imagen.
Respuesta
Por qué no pruebas con la instrucción javascript Showmodaldialog. Hay documentación de los parámetros a pasar en la web devguru.com
Suerte.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas