Martin Dunst: Existenz einer Funktion prüfen

Beitrag lesen

Hallo,

Ich will in Javascript per <body onload="[...]"> die Existenz der Javascriptfunktion "foo" überprüfen und diese, sofern sie existiert, rufen.

Da es sich um eine Intranetanwendung handelt, reicht es, wenn die Überprüfung in Internet Explorer ab Version 6 sowie in Firefox ab Version 2.0 funktioniert.
In dieser (sehr umfangreichen) Intranetanwendung hat jedes body-Element ein onload-Attribut, dem ich auf der Serverseite einen Inhalt geben kann - konkret kann ich serverseitig einen String definieren, der als Inhalt in das onload-Attribut des body-Tags kopiert wird.

Folgendes habe ich (erfolglos) versucht:

  
<body onload="if(foo) foo();">  
<body onload="if(foo) { foo(); }">  
<body onload="if(window.foo) window.foo();">  
<body onload="if(window.foo) { window.foo(); }">  

Ist die Funktion vorhanden, dann wird sie auch gerufen.
Ist sie jedoch nicht vorhanden, so erscheint ein Javascriptfehler (Sinngemäß: "foo ist nicht definiert")

Wie kann ich abfragen, ob die Funktion vorhanden ist?

lg
Martin Dunst

--
Do what I say, not what I do.
--Tim Berners-Lee