Dieses Mal zeige ich Ihnen, wie Sie das href-Attribut und das onclick-Ereignis für das a-Tag verwenden. Welche Vorsichtsmaßnahmen gibt es für die Verwendung des href-Attributs und des onclick-Ereignisses? Für das a-Tag sehen wir uns das Folgende an. Der
a-Tag wird hauptsächlich zur Implementierung von Seitensprüngen verwendet, die über das href-Attribut oder im onclick-Event erreicht werden können.
<a onclick="window.location.href='www.php.cn'" href="javascript:void(0);">PHP中文网</a>
Dieser Code ist in Mainstream-Browsern in Ordnung, es besteht jedoch das Problem, dass er unter IE6 nicht springen kann. Was ist der Grund dafür?
javascript:void(0);
void(arg); kann als Funktion verstanden werden, die immer null zurückgibt, deren Parameter jedoch nicht leer sein dürfen. Seine Parameter können beliebige Ausdrücke oder sogar Funktionen sein.
<a href="javascript:void(name = 'PHP中文网'); alert(name);">测试</a>
IE6 führt zuerst die an das DOM selbst gebundenen Ereignisse aus, z. B. onclick. Wenn das Bubbling nicht verhindert wird, werden die href-Attribute nacheinander ausgeführt. Und void(0); muss keine Ereignisse ausführen, daher weist IE6 den Browser an, keine Ereignisse auszuführen (vorherige Aktionen zu überschreiben), und das Beenden des Bubblings ist gleichbedeutend mit der Rückgabe von false, sodass der Browser keine Aktionen ausführt. Stoppen Sie also einfach das Bubbling-Ereignis innerhalb des Onclick-Ereignisses.
<a onclick="window.location.href='http://www.php.cn';return false;" href="javascript:void(0);">PHP中文网</a>
Auf diese Weise kann es normal unter IE6 laufen.
Eine andere Möglichkeit besteht darin, nicht javascript:void(0); zu verwenden, sondern stattdessen # zu verwenden. Das # im href-Attribut bedeutet ursprünglich den Ankerpunkt #name Wenn also kein Anker angegeben ist, wird er oben auf der Seite angezeigt. # hat eine bestimmte Bedeutung und der Standardwert ist #top. Wenn nach # ein Inhalt vorhanden ist, wird er als Tag betrachtet und zum entsprechenden Tag gesprungen, wenn er auf der Seite nicht gefunden wird Wenn Sie nicht springen möchten, können Sie ### verwenden. ### ist eine bedeutungslose Beschriftungsspezifikation.
Ich glaube, dass Sie die Methoden beherrschen, nachdem Sie diese Fälle gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!
Verwandte Lektüre:
Progressive Verbesserung und elegante Degradation in CSS3 So verwenden Sie
CSS3-Berechnung beim Kompilieren mit weniger Anleitung um es zu lösen, wenn es berechnet wird
Das obige ist der detaillierte Inhalt vonSo verwenden Sie das href-Attribut und das onclick-Ereignis für ein Tag. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!