Ich empfehle nicht hinzufügen in das Zielattribut. Es wurde aus Gründen der Barrierefreiheit fallen gelassen, und ich mag es nicht, wenn die Seite für mich entscheidet, wie meine Browser-Tags öffnen. Natürlich steht es Ihnen frei, wenn Sie möchten. Ich zeige Ihnen eine JavaScript-Methode, die Darin oben erwähnt, dass ermöglicht es Ihnen, als XHTML 1.0 Strict oder XHTML 1.1 zu überprüfen:
HTML-Code:
<!-- Added link titles for better testing purposes -->
<ul id="socialnetwork">
<li><a href="http://www.twitter.com/" class="targetblank">Twitter</a></li>
<li><a href="http://www.flickr.com/" class="targetblank">Flickr</a></li>
<li><a href="http://www.xing.com/" class="targetblank">XING</a></li>
<li><a href="http://www.rss.com/" class="targetblank">RSS</a></li>
</ul>
JavaScript-Code:
window.onload = function() {
// Code if document.getElementByClassName() doesn't exist
if (document.getElementsByClassName == undefined) {
document.getElementsByClassName = function(className) {
var hasClassName = new RegExp("(?:^|\\s)" + className + "(?:$|\\s)");
var allElements = document.getElementsByTagName("*");
var results = [];
var element;
for (var i = 0; (element = allElements[i]) != null; i++) {
var elementClass = element.className;
if (elementClass && elementClass.indexOf(className) != -1 && hasClassName.test(elementClass))
results.push(element);
}
return results;
}
}
var anchorList = document.getElementsByClassName('targetblank');
for (var i in anchorList) {
anchorList[i].target = '_blank';
}
}
Natürlich können Sie das window.onload weglassen, wenn Sie es bereits woanders einschließen, aber ich empfehle es zu verwenden (oder verwenden Sie eine andere Ladefunktion wie JQuery $(document).ready();
), so wird das JavaScript geladen, wenn die Seite fertig geladen ist. Jetzt müssen Sie nur noch jedem Ankerlink eine Klasse von "targetblank
" geben, und die Links sollten in einem neuen Tab geöffnet werden.
Okay, dann muss ich Strict fallen lassen .. jetzt ist es Zeit für den Übergang. – Tomkay
Wie öffne ich einen Link in einem neuen Tab ohne das Zielattribut und ohne JavaScript in diesem Szenario? – user1886419
Bitte versuchen Sie nicht, gute nützliche Antworten zu entfernen. Selbst wenn Sie mit SO fertig sind, profitieren sie immer noch anderen. – hvd