Verschachtelung von HTML-Anker-Tags
Frage
Heute habe ich an einer Tab-Navigation für eine Webseite gearbeitet.Ich habe es versucht Schiebetüren Ansatz, der gut funktioniert hat.Dann wurde mir klar, dass ich eine Option zum Löschen einer Registerkarte einfügen muss (normalerweise ein kleines X in der rechten Ecke jeder Registerkarte).
Ich wollte einen verschachtelten Anker verwenden, was jedoch nicht funktionierte nicht erlaubt.Dann sah ich die Tab-Navigation unter Pageflakes, was tatsächlich funktionierte (einschließlich verschachtelter Hyperlinks).Warum?
Lösung
Sie müssen einige wirklich verrückte Sachen mit JavaScript machen, damit es funktioniert (beachten Sie, dass weder das übergeordnete noch das verschachtelte Anker-Tag ein Namens- oder href-Attribut haben – die gesamte Funktionalität wird über den Klassennamen und JS ausgeführt).
So sieht der HTML-Code aus:
<a class="page_tab page_tab">
<div class="page_title" title="Click to rename this page.">Click & Type Page Name</div>
<a class="delete_page" title="Click to delete this page" style="display: block;">X</a>
</a>
Andere Tipps
Eigentlich war der Code, den ich zuvor eingefügt hatte, nach allen JS-Manipulationen das generierte DOM.Wenn Sie das nicht haben Feuerkäfer Erweiterung für Firefox, Sie sollten sie jetzt bekommen.
Bearbeiten:Habe den alten Beitrag gelöscht, er war nicht mehr nützlich.Firebug ist, also bleibt dieser :)
Ich vermute, dass funktionierende oder nicht funktionierende verschachtelte Links davon abhängen könnten, ob Ihr Browser die Seite im strikten Modus rendert (z. B.XHTML DTD, application/xml+html MIMEtype) oder im „Quirks“-Modus.
Obwohl verschachtelte Tags illegal sind, funktioniert das Schreiben mit JS! Versuchen Sie Folgendes:
$('<a>', {
href: 'http://google.com',
html: '<a>i am nested anchor </a>I am top Anchor'
}).appendTo($('body'))