TheJoe.it Into the (öffnen) Quelle

17Sep/125

Javascript: automatisch öffnet externe Links in einem neuen Fenster

Javascript

Der heutige Artikel ist ein wenig Beratung zu den Links um eine Website zu haben entspricht W3C(1). Dieses Verfahren ist in dem Fall, wir sind mit der Version gültig "XHTML 1.0 Strict", ein bisschen "datiert, aber immer noch gültig falls deklariert tag in der "HTML" Website.

Der Webdesigner hat verschiedene Möglichkeiten, um die Öffnung eines gegebenen Link gesetzt in einer neuen Seite (oder neuen Tab) Teil Browser. Der erste, der umgesetzt werden war die Aufnahme von "Eigenschaft "target='_blank'" innerhalb des Tags auf die Links verweisen "<a>". Dies ist der einfachste Weg, um einen Link in einem zweiten Fenster öffnen, aber leider auf die Standardtherapie nicht ansprechen W3C. Die von der W3C vorgeschlagen ist die Einbeziehung dieser anderen Attribute "onclick='window.open(this.href); return false;'", tatsächlich die Lösung des Problems mit einigen kurzen Einweisung Javascript.

Zum Glück für uns JavaScript ist eine ganz andere Sprache, einer der Verhaltensweisen, die wir verwalten, ist die Öffnung der Verbindung. Mit diesem dritten und letzten Beispiel wird in einem neuen Tab zu öffnen Alle externen Links, nämlich solche, die als Referenz beginnend mit "http://" spart uns mit, jedes Mal den Code schreiben, vorgeschlagen vom W3C auf jedem externer Link. Die Referenznummer ist dies:

Funktion externalLinks() {
  wenn (!document.getElementsByTagName) Rückkehr;
  var Anker = document.getElementsByTagName("a");
  für (var i = anchors.length-1; i>= 0; i -) {
    var Anker ANKER;[i];
    wenn (anchor.href && anchor.href.substr(0,7) == "http://")
    anchor.target = "_blank";
    }
  }
window.onload = externalLinks;

(1)_ Das W3C ist die Non-Profit-Organisation, die mit einer gewissen Steifigkeit zufügt Standards, dass Webmaster und Entwickler von Browsern folgen zu erstellen und diese Seiten müssen zu etablieren "XHTML", und sorgt so für maximale Kompatibilität zwischen der Website und die verschiedenen Browser. Lesen Sie mehr über die Ziele der Organisation werden erläutert (sowie Organisation der Website) zu der entsprechenden Seite Wikipedia.

hat dir dieser Artikel gefallen?

Dann abonniere doch diesen Blog per RSS Feed!

Über

Ich halte diesen Blog als ein Hobby von 2009. Ich bin begeistert von Grafik, Technologie, Open Source Software. Unter meinen Artikel wird nicht schwierig sein, über die Musik finden, und einige persönliche Reflexionen, aber ich bevorzuge die direkte Linie des Blogs vor allem auf Technologie. Weitere Informationen Kontaktieren Sie mich.

Kommentare (5) Trackbacks (0)
  1. Es ist zu einfach so…intendevo x Häuser. Ich musste das oder fügen
    dass:
    wenn ((anchor.href && anchor.href.substr(0,7) == “http://”) || (anchor.href && anchor.href.substr(0,8) == “https://”))

    Erweiterung des Spektrums an 8 und Hinzufügen eines s
    ciaoooo

  2. Es öffnet sich ein neues Fenster für die prot nur http und https?

  3. Nun, W3C-Spezifikationen sind noch älter (2002 – “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”) und weiterhin als Standard verwendet. Und es ist auch wahr, dass die HTML- 5 ist für eine Weile ", aber es ist immer noch der Standard.

    Der einzige Weg, um die Kompatibilität mit der erzwungenen Öffnung eines Links in einer zweiten Registerkarte gewährleisten ist die Verwendung “Übergangsbestimmungen” an Stelle von “strengen”. Die Übergangszeit wäre Zwischenbericht.

    In diesem Zusammenhang weisen wir darauf hin eine interessante Statistik von Yahoo zusammengestellt: http://developer.yahoo.com/blogs/ydn/posts/2010/10/how-many-users-have-javascript-disabled/ das hat nur wenige Länder in der Welt (dies ist die Aktualisierung: 2010). Auch wenn der Anteil ist gering (im schlimmsten Fall um 2%) Sie lehren mich, dass Sie, um die Kompatibilität zu gewährleisten müssen.
    In der Tat, die Methode in diesem Artikel beschrieben wird, nicht in einem Mangel an Kompatibilität übersetzen für den Benutzer, js deaktiviert hat, einfach Links werden in der gleichen Seite öffnen (der Webmaster nicht ihr Ziel erreicht haben, aber der Benutzer wird dadurch nicht beschädigt werden).

  4. Abgesehen davon, dass der ursprüngliche Artikel 2003 ist etwas’ älter (http://www.sitepoint.com/standards-compliant-world), es ist wahr, dass in 2012 macht es wenig Sinn, den Fall zu nennen, aber.. Wenn JavaScript deaktiviert ist?


Hinterlasse einen Kommentar

Noch keine Trackbacks.