En lugar de unirse a su "clic" manipulador de esa manera, hacer esto:
$('a').bind("click.myDisable", function() { return false; });
Luego, cuando se desea eliminar ese controlador es fácil:
$('a').unbind("click.myDisable");
esa manera a evitar estropear otras cosas que podrían estar obligadas a "hacer clic". Si acaba de destrabar "clic", desvinculará todo lo vinculado a ese evento.
edición en 2014 — la forma en que ates eventos que ahora está con .on()
:
$('a').on('click.myDisable', function() { return false; });
Probablemente sería mejor hacer esto:
$('a').on('click.myDisable', function(e) { e.preventDefault(); });
para desenlazar:
$('a').off('click.myDisable');
Finalmente, usted co ULD enlazar un controlador al cuerpo del documento y hacer frente a <a>
etiquetas que se agregan de forma dinámica:
$('body').on('click.myDisable', 'a', function(e) { e.preventDefault(); });
// to unbind
$('body').off('click.myDisable');
Todas las respuestas correctas, pero tenía que darle a puntiagudas para señalar que la punta hacia fuera - sin juego de palabras! – Abs
¿Esto ocurrirá con frecuencia? Según lo entiendo, el enlace/desvinculación requiere un poco de sobrecarga. Dependiendo de la página, puede que no sea la mejor manera de hacerlo. – user113716
http://www.bennadel.com/blog/1771-Enable-and-Disable-jQuery-Event-Handlers-Rather-Than-Bind-And-Unbind-.htm – user113716