Foros del Web » Programando para Internet » Javascript »

problema con links y ventana secundaria

Estas en el tema de problema con links y ventana secundaria en el foro de Javascript en Foros del Web. hcie esta funcion para crear una ventana y usarla en unos links de la pagina pero cuando hago click en alguno de ellos se abre ...
  #1 (permalink)  
Antiguo 22/09/2005, 21:12
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 19 años, 10 meses
Puntos: 4
problema con links y ventana secundaria

hcie esta funcion para crear una ventana y usarla en unos links de la pagina pero cuando hago click en alguno de ellos se abre la ventana y ademas se carga la página tambien en la ventana principal

Código HTML:
<script type="text/javascript">
NydusWindow = null;
function openNydusWindow()
{
	var Wname = (!arguments[1]) ? "NydusW" : arguments[1];
	var params = "width=800,height=500,scrollbars=yes,resizable=yes,location=yes,menubar=yes,status=yes,toolbar=yes";
	NydusWindow = window.open(arguments[0], Wname, params);
	NydusWindow.focus();
}
	</script>

.....

<a target="_blank" onclick="openNydusWindow(this.href); return false;" href="http://www.lalala.com">link que esta loco!!!</a> 
alguna idea? esto pasa tanto en firefox como ie

saludos.
__________________
Internet Explorer SuckS
Download FireFox
  #2 (permalink)  
Antiguo 23/09/2005, 13:20
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
Hola, SiR

Mira bien, porque tu código me funciona en IE y en Ff
__________________
Angel :cool:
  #3 (permalink)  
Antiguo 23/09/2005, 13:36
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
No entiendo por que ponerle dos asignaciones al a si queres solo el una (el popup).
Deberia, por lo que entiendo, ser asi:

Código HTML:
<script type="text/javascript">
NydusWindow = null;
function openNydusWindow()
{
	var Wname = (!arguments[1]) ? "NydusW" : arguments[1];
	var params = "width=800,height=500,scrollbars=yes,resizable=yes,  location=yes,menubar=yes,status=yes,toolbar=yes";
	NydusWindow = window.open(arguments[0], Wname, params);
	NydusWindow.focus();
}
	</script>

.....

<a href="javascript:void(0)" onclick="openNydusWindow('http://www.lalala.com');">link que esta loco!!!</a> 
Por otro lado, el llamar a un popup por el mismo nombre (var Wname, es mejor pasarle este parametro ) no es buena idea a no ser que lo necesites de esa manera, ya lo que logras asi es unicamente una sola instancia por este medio; o sea, no podrás abrir dos ventanas con el mismo nombre sino qu eregeneraras el contenido de la ya creada anteriormente (qu elio hice).

PD: Otra manera de llamar al link podría ser con un:
<a href="javascript:openNydusWindow('http://www.lalala.com');">link que esta loco!!!</a>


Espero te haya solucionado algo.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #4 (permalink)  
Antiguo 24/09/2005, 07:21
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 19 años, 10 meses
Puntos: 4
exactamente lo que quiero es llamar a la misma ventana 50 veces y no que se abra una nueva, sino para eso utilizo target="_blank".
las otras 2 formas de abrir un popup no es la correcta, supongamos el caso de alguien que no tiene javascript, nunca se le abrira la ventana. este ejemplo que puse lo saque de la pagina de mozilla y es la forma correcta... (que no funciona)
http://developer.mozilla.org/en/docs...Best_practices
__________________
Internet Explorer SuckS
Download FireFox
  #5 (permalink)  
Antiguo 24/09/2005, 09:41
Avatar de programeitor  
Fecha de Ingreso: febrero-2005
Mensajes: 994
Antigüedad: 19 años, 2 meses
Puntos: 9
Por que no explicas mejor, que es lo que quieres conseguir, porque ese codigo es un poco redundante.
  #6 (permalink)  
Antiguo 24/09/2005, 10:24
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 19 años, 10 meses
Puntos: 4
? quiero abrir un link en la nueva ventana creada... y que no se abra en la ventana principal tambien..
__________________
Internet Explorer SuckS
Download FireFox
  #7 (permalink)  
Antiguo 24/09/2005, 11:22
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola SiR.CARAJ0DIDA:

¿Te has fijado en la forma de abrir links en popups que puse en las FAQs?

Difiere un poco de la forma que dices que es la correcta (no estoy de acuerdo... aunque lo expongan en "Mozilla")
Si ponemos return false queremos anular el enlace ¿o no?...

No es mejor abrir una ventana en blanco y luego enlazar...

Para mí la forma correcta es así:

<a href="enlace.html" target="popup" onclick="window.open('', 'popup', '')">enlace</a>

El enlace se abre en una ventana vacía (lista para escribir o "enlazar") y sin ser luego anulado...

Siempre he pensado que usar return false en los enlaces tiene que ser con la única intención de anularlos... además es una extrapolación exacta de un formulario...

<form action="enlace.html" target="popup" onsubmit="window.open('', 'popup', '')">
...
</form>

Si crees que no es correcto, me interesaría saber tu opinión.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 24/09/2005, 12:31
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 19 años, 10 meses
Puntos: 4
esto es una broma, sigue pasando lo mismo, hice esto:

<a target="NydusW" onclick="window.open('', 'NydusW', '');" href="http://www.torneosnydus.com.com">

y se abre en las 2 ventanas..

con respecto al return false, es para evitar justamente que el link se abra en la ventana principal y usar el popup, el que no tenga javascript va a poder verlo =
__________________
Internet Explorer SuckS
Download FireFox
  #9 (permalink)  
Antiguo 24/09/2005, 14:53
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Claro que se va a abrir en dos lados, si eso es lo que le estas diciendo.


Decime, probaste de llamarlo como te dije arriba?
<a href="javascript:void(0)" onclick="openNydusWindow('http://www.lalala.com');">link que esta loco!!!</a>
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #10 (permalink)  
Antiguo 24/09/2005, 17:31
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

Tal como lo has puesto esta última vez, te puedo asegurar que se abre en el popup...

Aunque estoy "casi" seguro de que sabes bien lo que haces (te he leído en muchas ocasiones...) no tendrás otro enlace u otro script anidado...

¿Puedes subir una página de prueba para chequearlo...?

Sobre return false... cancela el link ya sea en la página principal, o habiendo definido un target

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #11 (permalink)  
Antiguo 24/09/2005, 19:42
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 19 años, 10 meses
Puntos: 4
bueno pueden ver en esta pagina www.torneosnydus.com en el menu izquierdo abajo donde dice "afiliados" hagan click en alguna imagen.
__________________
Internet Explorer SuckS
Download FireFox
  #12 (permalink)  
Antiguo 25/09/2005, 02:49
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

La verdad es que la he visitado y no encuentro un motivo lógico para que no funcione...

Para que veas que la forma que te he comentado va bien hice este ejemplillo:

Código:
<html>
<body>
<a href="prueba.html" target="popup" onclick="window.open('', 'popup', '')">prueba</a>
</body>
</html>
Qhe puedes hacerlo correr en mi probador de script (así solo copias y pegas): http://www.pepemolina.com/probador/index.html
y podrás ver el resultado...

Por cierto, si pones la DTD estricta no va a validar con el target a no ser que lo asignes con un script... onclick='this.target = "NydusW";...'

Otra cosa... si la ventana principal se llamase NydusW, tampoco se abriría un popup.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #13 (permalink)  
Antiguo 25/09/2005, 12:51
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 19 años, 10 meses
Puntos: 4
no hay ningun link en esa pagina de pruebas. acabo de probar de todas formas y la unica que me anduvo x ahora es la de void(0).
el doctype estricto tengo que usarlo sino en explorer se ve todo mal.

bueno, ahora hago lo que hice al principio en una pagina de prueba con mismo doctype y me anda, en la pagina que puse mas arriba no anda.......
__________________
Internet Explorer SuckS
Download FireFox

Última edición por SiR.CARAJ0DIDA; 25/09/2005 a las 12:59
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:14.