2009-11-06 13 views

Antwort

91

Ihre Titelfrage und Ihr Beispiel sind völlig anders. Ich werde durch die Beantwortung der Titelfrage beginnen:

$("a").removeAttr("href"); 

Und soweit nicht ein href erforderlich, die allgemein akzeptierte Art und Weise, dies zu tun ist:

<a href"#" onclick="doWork(); return false;">link</a> 

Die Rückkehr falsch ist notwendig, damit die href geht eigentlich nirgendwohin.

8

Wenn Sie remove das href Attribut der Anker wird nicht fokussierbar sein und es wird wie einfacher Text aussehen, aber es wird immer noch anklickbar sein.

+0

Es ist in Ordnung, solange es wie einfacher Text aussieht, nicht wie ein Hyperlink oder eine Schaltfläche. – Steven

18

Wenn Sie Ihren Anker wollen noch erscheinen anklickbar sein:

$("a").removeAttr("href").css("cursor","pointer"); 

Und wenn Sie die href entfernen wollte von Anker nur mit bestimmten Attributen (zB diejenigen, die nur eine Raute als href haben - dies kann in asp.net)

$("a[href='#']").removeAttr("href").css("cursor","pointer"); 
+0

Auch nützlich in Javascript, habe ich Zeiger-Ereignisse: auch keine. $ ("a [href = '#']"). RemoveAttr ("href"). Css ("Cursor", "Zeiger"). Css ("Zeiger-Ereignisse", "keine"); – Khagan

7

nützlich sein, wenn Sie die href, ändern Sie den Cursor und auch verhindern, dass Sie darauf klicken, sollte dies entfernen wollte arbeiten:

$("a").attr('href', '').css({'cursor': 'pointer', 'pointer-events' : 'none'});