2009-08-04 8 views
1

Pourriez-vous suggérer un exemple de code sur comment activer et désactiver un lien hypertexte en cliquant dessus.jquery - Activer et désactiver le lien hypertexte

J'ai essayé ce qui suit, mais aucun résultat

1) $("a#click").onclick = function() { return false; }

2) $("a#click").attr ('href', '#');

3)

$(function(){ 
    $("#disabled a").click(function() { 
    $(this).fadeTo("fast", .5).removeAttr("href"); 
    }); 
}); 
+0

duplicata possible de [comment activer ou désactiver l'étiquette d'ancrage en utilisant jquery] (http://stackoverflow.com/questions/1164635/how-to-enable-or-disable-anchor-tag-using-jquery) –

Répondre

3

$("a#click").click(function() { return false; });

Avec ce code, les clics sur le lien sera n'a aucun effet. Est-ce ce que vous cherchez?

0

Ma conjecture est possible

$('a').attr('disabled','disabled'); 

Faites nous savoir si elle aide ..

+2

cela ne sera pas travail, selon http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-87355129 l'attribut désactivé sur une balise d'ancrage ne peut être utilisé pour déclencher des feuilles de style. - citation: désactivé (de type booléen) Active/désactive le lien. Ceci est actuellement utilisé uniquement pour les liens de feuille de style et peut être utilisé pour activer ou désactiver des feuilles de style. - – Sander

3

je le ferais avec une classe CSS ... si un lien doit être désactivée basculer sa catégorie "désactivé" à activé.

cela vous donne la possibilité de style a.disabled avec un style différent (curseur, couleur ...)

et en cas de clic vous suffit de cocher uniquement pour effectuer une action si le lien cliqué ne possède pas la classe « handicapé »

$('a').bind('click', function(){ 
    if($(this).hasClass('disabled')) { 
    // perform actions upon disabled... show the user he cannot click this link 
    return false; 
    } else { 
    // perform actions for the click... 
    } 
}); 
2

Si vous parlez attacher des fonctionnalités à un a-étiquette, mais ne veulent pas le navigateur pour traiter les HREF là-dessus, il existe une méthode jQuery intégrée pour faire ceci:

$("a#click").click(function(event) { 
event.preventDefault(); 

// do stuff here 
}); 
Questions connexes