Dieser bestimmte Code in einem Tag wird häufig in Beispielcode mit JavaScript angezeigt. Am häufigsten werden Sie sehen, wie es so aussieht Der Hauptzweck des Tags besteht darin, einen Link bereitzustellen, auf den Benutzer klicken können, um JavaScript auszuführen.
Bei Verwendung in einem Beispielcode wie diesem ist das # ein Platzhalter, der angibt, wohin der Link tatsächlich verlegt werden soll, wenn für die Person, die Ihre Seite besucht, JavaScript nicht aktiviert ist.
Wenn Sie href = "#" im Live-Code einer Webseite sehen, bedeutet dies, dass die Person, die die Seite geschrieben hat, einen Fehler gemacht hat. Sie sollten niemals href = "#" im tatsächlichen Quellcode einer Webseite sehen, da das # für sich genommen tatsächlich ungültig und bedeutungslos ist.
Wann immer Sie JavaScript an einen solchen Link anhängen oder ein unauffälliges Äquivalent verwenden, müssen Sie immer auch diejenigen berücksichtigen, für die JavaScript aus irgendeinem Grund nicht aktiviert ist. Das falsch zurückgeben Am Ende meines obigen Beispiels wird verhindert, dass die HREF tatsächlich verwendet wird, wenn JavaScript ausgeführt wird. Die HREF wird jedoch weiterhin verwendet, wenn JavaScript aus irgendeinem Grund nicht ausgeführt wird. Die href muss daher einen gültigen Wert enthalten, der darauf basiert, wohin der Link Personen führen soll, für die kein JavaScript verfügbar ist. Da die Person, die das JavaScript für Sie geschrieben hat, nicht weiß, wohin diese Personen mitgenommen werden sollen, haben sie nur ein # in ihren Code eingefügt, in dem Sie die tatsächliche Adresse ersetzen müssen.
Ein # ist in einem href-Attribut gültig, sofern es nicht das einzige Zeichen im Wert ist. Wenn auf das # weitere Zeichen folgen, handelt es sich bei diesen zusätzlichen Zeichen um den Wert eines ID-Attributs an einer anderen Stelle der aktuellen Webseite. Auf der Seite wird das Tag mit dieser ID so nah wie möglich am oberen Rand des Browser-Ansichtsfensters angezeigt. Beispielsweise wird auf derselben Webseite zu gesprungen. Wenn Sie auch einen Dateinamen vor dem # haben, befindet sich die ID, zu der gesprungen wird, innerhalb dieser Webseite, sodass Sie auf der next.htm-Seite zu dieser ID springen.
Ein # -Zeichen ist als letztes Zeichen der href ungültig, da impliziert wird, dass Sie zu einer ID innerhalb der Seite springen möchten, der Wert der ID, zu der gesprungen werden soll, jedoch nicht angegeben wurde. Die Aktion, die der Browser in dieser Instanz ausführen soll, ist undefiniert, die meisten springen jedoch einfach an den Anfang der aktuellen Seite zurück.
Was machen Sie also, wenn das anzuhängende JavaScript so ist, dass es für Benutzer ohne JavaScript keine Alternative gibt? In diesem Fall möchten Sie nicht, dass die Benutzer ohne JavaScript den Link überhaupt sehen, da einige von ihnen auf den Link klicken, wenn er für sie sichtbar ist, und Sie nichts haben, was Sie für sie tun möchten wird nur verwirrend sein. Die Lösung besteht daher darin, sicherzustellen, dass der Link nur für Benutzer mit aktiviertem JavaScript sichtbar ist, und den Link mithilfe von JavaScript in die Webseite einzufügen.
Nur wenn das in die Webseite mit JavaScript eingefügt wird, können Sie sicher sein, dass jeder, der auf den Link klickt, JavaScript aktiviert und der doSomething () - Code ausgeführt wird und das href = "#" ignoriert wird. Dann und nur dann macht es keinen Sinn, das # an dieser Stelle im Code zu belassen, da das href-Attribut erforderlich ist, damit einige Browser den Code als gültigen Link akzeptieren und Sie wissen, dass nur die Personen das sehen Wenn JavaScript aktiviert ist, weißt du auch, dass niemand wirklich zu dem Ort gebracht wird, auf den die HREF verweist, und daher kann sie alles enthalten, ohne dass es darauf ankommt. # ist also so gut wie jeder Wert und ist es mit Sicherheit besser als href = "javascript:" (ein Konstrukt, das niemals verwendet werden sollte, unabhängig davon, ob dem Doppelpunkt etwas folgt oder nicht).