Posts
391
Comments
137
Trackbacks
0
Sharepoint Body-onload-Event

SharePoint bietet mit seiner JavaScript-Bibliothek (INIT.JS) die Möglichkeit dem Body onload-Event mehrere JavaScript-Funktionen hinzuzufügen um diese im onlad-Event nacheinander auszuführen.

Dazu werden zum einen dem Array _spBodyOnLoadFunctionNames weitere Funktionen hinzugefügt: _spBodyOnLoadFunctionNames.push("meineEigeneFunktion").

Zum anderen wird beim onload-Event das Array spBodyOnLoadFunctionNames abgefragt:

onload="javascript:if (typeof(_spBodyOnLoadWrapper) != 'undefined') _spBodyOnLoadWrapper();"

Wenn die Funktion _spBodyOnLoadWrapper exisitert, dann wird diese aufgerufen. Diese Funktion wiederum ruft die Funktion ProcessDefaultOnLoad auf welche das Array _spBodyOnLoadFunctionNames nach Funktionsnamen durchgeht und anschießend diese Funktionen nacheinander ausführt:

function ProcessDefaultOnLoad(onLoadFunctionNames)
{

// ...
for (var i=0; i < onLoadFunctionNames.length; i++)
{
      var expr="if(typeof("+onLoadFunctionNames[i]+")=='function'){"+onLoadFunctionNames[i]+"();}";
      eval(expr);
}
if (typeof(_spUseDefaultFocus)!="undefined")
DefaultFocus();

}

Auf diese Weise lassen sich eigene Funktionen wie z.B. Ajax-Funktionen in ein SharePoint-Projekt einbinden.

posted on Monday, November 24, 2008 9:16 PM Print
Comments
No comments posted yet.

Post Comment

Title *
Name *
Email
Url
Comment *  
Please add 5 and 7 and type the answer here: