Schnellstart-Link in neuem Fenster öffnen

In diesem Beitrag wird gezeigt, wie man einen Link in der Schnellstartleiste so manipulieren kann, daß er sich in einem neuen Fenster (oder in einem neuen Reiter) öffnet.

Man geht dabei wie folgt vor: der gewünschte Link muß per JavaScript/ECMAScript ausfindig gemacht und dann ein Attribut target="_blank" angehängt werden. Am Einfachsten geht das, wenn man jQuery verwendet.

Man braucht dazu die jQuery-Library, die hier heruntergeladen werden kann. Die Datei kann irgendwo in der Website, z.B. in der immer vorhandenen Formatbibliothek, abgelegt werden. Besser ist es aber sie direkt in einen passenden Ordner im Dateisystem der Webfrontendserver zu legen, weil man sie von dort in jeder beliebigen Website einbinden kann. Ich verwende dazu normalerweise einen eigenen Unterordner von 14\LAYOUTS.

Das Script muß in die Gestaltungsvorlage (Masterpage) eingebaut werden. Dazu öffnet man die Website in SharePoint Designer. Die Gestaltungsvorlage findet man (wer hätte es gedacht), wenn man links auf "Gestaltungsvorlagen" klickt. Die Standard-Masterpage heißt V4.master. Die Seite öffnet man in der Codeansicht und sucht das Ende des <head>-Abschnitts, d.h. man macht die Ergänzungen vor der schließenden Zeile </head>.

Zunächst wird die jQuery-Library referenziert:

/_layouts/Demo/jquery-1.6.1.min.js

jQuery macht es sehr einfach bestimmte Elemente anzusprechen. In diesem Fall suchen wir einen Link, also ein <a>-Element, der auf eine bestimmte URL verweist:

$("a[href=’/subsite/‘]")

Bei dieser Methode muß immer der gesamte Link angegeben werden (man beachte, daß Links in der Schnellstartleiste meist Server-relativ sind). Es gibt aber noch andere Möglichkeiten, als den direkten "ist gleich"-Vergleich:

= bedeutet "exakt gleich"
!= bedeutet "ungleich"
^= bedeutet "beginnt mit"
$= bedeutet "endet mit"
*= bedeutet "enthält"

Dem Link wird jetzt das Attribut target="_blank" angehängt:

.attr("target", "_blank")

Das gesamte Script sieht dann so aus:

/_layouts/Demo/jquery-1.6.1.min.js

  $(document).ready(function() {
    $(„a[href=’/subsite/‘]“).attr(„target“, „_blank“);
  });