Ver Mensaje Individual
  #6 (permalink)  
Antiguo 09/11/2009, 17:04
Avatar de neodani
neodani
 
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 8 meses
Puntos: 20
Respuesta: Un boton puede tener mas de una acción?

Cita:
Iniciado por stock Ver Mensaje
Claro que es posible hacerlo inclusive agregando dos listeners diferentes al mismo elemento.

Actualmente lo estas haciendo de una manera muy "arcaica" o "antigua", realmente eso ya no se debería hacer, te recomiendo hacerlo de la siguiente manera:

Código:
//el script

var link = document.getElementById('link');

//podemos agregar varios listeners
link.addEventListener('click',function(){
      window.open(this.href, this.target, 'width=500,height=500');
      return false;
},false);

//a un mismo evento!!
link.addEventListener('click',function(){
     document.location='pagina.php';
     return false;
},false)



//el html....
<body>

<a href="pop-up.php" id="link">Abrir pop-up y redireccionar</a>

</body>
De esta manera estarías siguiendo la especificación y escribirías mejor código, para más información: https://developer.mozilla.org/en/DOM...dEventListener

saludos

PS: no he probado el código pero creo que quedó clara la idea.
Muchas gracias stock, veo muy limpio el código, facil de entender ;)

Sin embargo, no funciona el abrir el pop-up, tan solo la redirección.

Código HTML:
<html>
<head>
<script type="text/javascript">
var link = document.getElementById('link');

//podemos agregar varios listeners
link.addEventListener('click',function(){
      window.open(this.href, this.target, 'width=500,height=500');
      return false;
},false);

//a un mismo evento!!
link.addEventListener('click',function(){
     document.location='otra_web.php';
     return false;
},false)
</script>
</head>
<body>

<a href="pop-up.php" id="link">Abrir pop-up y redireccionar</a>

</body>
</html> 
Es curioso porque si intercambio los eventos, en lugar de funcionar la redirección, funciona el pop-up. Es decir, es como si solo valiese el último listener...