Erstens ist es am href
besten , die URL zu haben, da Benutzer damit Links kopieren, in einem anderen Tab öffnen usw. können.
In einigen Fällen (z. B. Websites mit häufigen HTML-Änderungen) ist es nicht praktisch, bei jedem Update Links zu binden.
Typische Bindungsmethode
Normaler Link:
<a href="https://www.google.com/">Google<a/>
Und so etwas für JS:
$("a").click(function (e) {
e.preventDefault();
var href = $(this).attr("href");
window.open(href);
return false;
});
Die Vorteile dieser Methode sind die saubere Trennung von Markup und Verhalten und müssen nicht die Funktionsaufrufe in jedem Link wiederholen.
Keine Bindungsmethode
Wenn Sie jedoch nicht jedes Mal binden möchten, können Sie onclick verwenden und das Element und das Ereignis übergeben, z.
<a href="https://www.google.com/" onclick="return Handler(this, event);">Google</a>
Und das für JS:
function Handler(self, e) {
e.preventDefault();
var href = $(self).attr("href");
window.open(href);
return false;
}
Der Vorteil dieser Methode besteht darin, dass Sie jederzeit neue Links (z. B. über AJAX) laden können, ohne sich jedes Mal um das Binden kümmern zu müssen.