Foros del Web » Programando para Internet » Javascript »

Modificar onclick

Estas en el tema de Modificar onclick en el foro de Javascript en Foros del Web. Hola! He estado haciendo pruebas para comenzar a hacer una cosa, pero he descubierto una cosa que no me sale: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código javascript : ...
  #1 (permalink)  
Antiguo 27/04/2009, 08:13
(Desactivado)
 
Fecha de Ingreso: abril-2009
Ubicación: En mi casa
Mensajes: 191
Antigüedad: 15 años, 9 meses
Puntos: 0
Modificar onclick

Hola!

He estado haciendo pruebas para comenzar a hacer una cosa, pero he descubierto una cosa que no me sale:

Código javascript:
Ver original
  1. <a id="menulink" href="/menu.php" class="menuprincipaltext">M&aacute;s</a>
  2.  
  3. <script language="javascript">
  4. <!-- Ocultar de navegadores antiguos
  5. function mostrarmenu(){
  6. alert("No pulses en link");
  7. }
  8.  
  9.   document.getElementById("menulink").href = "";
  10.   document.getElementById("menulink").onclick="mostrarmenu()";
  11. //-->
  12. </script>

Al pulsar el link NO sucede nada
  #2 (permalink)  
Antiguo 27/04/2009, 09:02
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 17 años, 1 mes
Puntos: 25
Pregunta Respuesta: Modificar onclick

prueba con esto amigo!!!

Código PHP:
      <a id="menulink" href="/menu.php" class="menuprincipaltext">M&aacute;s</a>
      <
script language="javascript">
      <!-- 
Ocultar de navegadores antiguos
      
function mostrarmenu(){
      
alert("No pulses en link");
      }
       
        
document.getElementById("menulink").href "";
        
document.getElementById("menulink").href="javascript: mostrarmenu()";
      
//-->
      
</script> 
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #3 (permalink)  
Antiguo 27/04/2009, 10:06
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Modificar onclick

También se puede hacer así:
Código javascript:
Ver original
  1. var elem = document.getElementById("menulink");
  2. elem.onclick = mostrarmenu;
O también:
Código javascript:
Ver original
  1. var elem = document.getElementById("menulink");
  2. if (elem.addEventListener) {
  3.     elem.addEventListener('click', mostrarmenu, false);
  4. } else if (elem.attachEvent) {
  5.     elem.attachEvent('onclick', mostrarmenu);
  6. }
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 27/04/2009, 14:37
(Desactivado)
 
Fecha de Ingreso: abril-2009
Ubicación: En mi casa
Mensajes: 191
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Modificar onclick

Gracias... pero lo que quiero es que se desactive el link...

Es decir... cuando exista html, el href no funcione.

Saludos
  #5 (permalink)  
Antiguo 27/04/2009, 14:39
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 17 años, 1 mes
Puntos: 25
Respuesta: Modificar onclick

cuando exista html ???????????????
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #6 (permalink)  
Antiguo 27/04/2009, 14:44
(Desactivado)
 
Fecha de Ingreso: abril-2009
Ubicación: En mi casa
Mensajes: 191
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Modificar onclick

Cita:
Iniciado por hector2c Ver Mensaje
cuando exista html ???????????????

Hay perdón de veras..... cuando exista javasctipt, que no vaya a ningún sitio...

No encuentro la manera...
  #7 (permalink)  
Antiguo 27/04/2009, 18:47
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Modificar onclick

Sólo tienes que cancelar la acción del evento.
Código Javascript:
Ver original
  1. function cancelEvent(evt) {
  2.     if (evt.preventDefault) {
  3.         evt.preventDefault();
  4.     } else {
  5.         evt.returnValue = false;
  6.     }
  7. }
Sólo tienes que pasarle como parámetro el manejador del evento.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #8 (permalink)  
Antiguo 28/04/2009, 00:04
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 16 años, 5 meses
Puntos: 32
Respuesta: Modificar onclick

Q alguien me corrija si me equivoco ya que soy nuevo en Js
Usa_Firefox creo que lo esta haciendo mal ya que a
document.getElementById("menulink").onclick="mostr armenu()"; lo hace con comillas y le coloca los parentesis creo q la manera correcta es asi.

Sorry si me equivoco soy nuevo en Js

function mostrarmenu(){

alert("No pulses en link");

}


document.getElementById("menulink").href = "";

document.getElementById("menulink").onclick=mostrarmenu;
  #9 (permalink)  
Antiguo 28/04/2009, 07:28
(Desactivado)
 
Fecha de Ingreso: abril-2009
Ubicación: En mi casa
Mensajes: 191
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Modificar onclick

Hola! gracias por las respuestas... pero no entiendo eso de cancelra el evento.

Lo único que quiero es deshabilitar el href cuando esté javascript activado....

Hice esto:

document.getElementById("menulink").href="";

Pero hay un problema, y es que la página se recarga...
  #10 (permalink)  
Antiguo 28/04/2009, 09:47
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Modificar onclick

No necesitas cambiar el href.

Simplemente cancela el evento, como te dije.
Código Javascript:
Ver original
  1. <a href="enlace.html" onclick="funcion(); return false">Enlace</a>
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #11 (permalink)  
Antiguo 28/04/2009, 12:15
(Desactivado)
 
Fecha de Ingreso: abril-2009
Ubicación: En mi casa
Mensajes: 191
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Modificar onclick

Ahhh! Ok..

No entendía lo que me pusiste.... Igual así, muchas gracias...

Era el return false....
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:57.