Seiten

Herzlich willkommen im technischen Blog der MindBusiness GmbH
In diesem Blog veröffentlichen wir praxisnahes Know-how, neue Erkenntnisse und Erfahrungen zu Microsoft SharePoint- und Office-Themen direkt aus unserer Berater-, Trainer- und Entwickler-Praxis. Hier finden Sie interessante Lösungen und neue Ideen zu den verschiedensten Anforderungen und Problemen. Unseren News-Blog finden Sie unter newsblog.mindbusiness.de/newsblog. Wir wünschen Ihnen viel Spaß beim Lesen und Stöbern und freuen uns auf den Austausch mit Ihnen.

Bereiche auf SharePoint Seiten dynamisch ein- und ausschalten

Häufig stellt sich das Problem, dass man auf einer SharePoint Seite mehr Informationen ohne scrollen darstellen möchte und deshalb der Kopfbereich zu viel Platz wegnimmt. Der folgende Beitrag zeigt, wie wir im Prinzip beliebige Bereiche dynamisch mit Hilfe von JavaScript ein- und ausschalten können. Es erfolgt keine! Änderungen an der Masterpage in dem Sinne, dass Placeholder oder Komponenten entfernt würden.

Schauen wir uns zunächst den Bildschirm mit und ohne Kopfzeile an.

image

Seite mit Kopfzeile

image

Seite ohne Kopfzeile

Für die Steuerung wird ein neuer Link in die Schnellstartleiste eingefügt.

image

Die Grundidee besteht darin, in Frage kommende Bereiche, z.B. Zeilen oder Ebenen, mit einem Attribut und einer Inline-CSS auszustatten. Dies sieht dann z.B. so aus:

<div id=”mb_mysites” mbName=”albdarTitelleiste” style=”display:inline”>

</div>

Das hier definierte Attribut ist mbName, das kein HTML-Attribut ist und nur dazu dient, in Frage kommende Elemente zu kennzeichnen.

In einem Script werden wird nun alle Ebenen und Zeilen auslesen, in einer Schleife durchlaufen und immer dann, wenn es sich um ein Element mit dem Attribut mbName handelt, ein oder ausschalten.

Im Headbereich steht nun folgendes Script:

 

<script type=”text/javascript” >
var show = “inline”;
function einaus() {

zeilen = document.getElementsByTagName(“tr”);
divs = document.getElementsByTagName(“div”);

if (show == “inline” ) {
show = “none”;
}
else {
show = “inline”;
}

 

for ( i = 0; i < divs.length; i++) {
e = divs[i];
if (e.getAttribute(“mbName”) == “albdarTitelleiste”) {
e.style.display=show;
}
} // for

for ( i = 0; i < zeilen.length; i++) {
e = zeilen[i];
if (e.getAttribute(“mbName”) == “albdarTitelleiste”) {
e.style.display=show;
}
} // for

} // function

 

 


</script>

Dieses Script wird dem Link in der Schnellstartleiste zugewiesen.

<tr><td nowrap>
<a href=”#” onclick=”einaus();” >Kopfzeile ein / aus</a></td></tr>

Die hier vorgestellte Technik ist auf viele Szenarien anwendbar und ermöglicht eine flexible und benutzerfreundliche Oberfläche. Im gezeigten Beispiel wurden alle Ebenen und Zeilen der Kopfzeile einer SharePoint Masterpage mit dem Attribut mbName versehen.

 

 

 

 

 

Hinterlasse eine Antwort

 

 

 

Du kannst diese HTML-Tags benutzen

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">