Move onload/onunload from body tag to script

<body onload="initialize();" onunload="GUnload()">

I want to take the body onload and onunload events and place them in a script instead of the body tag.
LVL 16
hankknightAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
LordOfPortsConnect With a Mentor Commented:
Because of the timing related to the sequence of events this does not seem to be possible, i.e. if you place it in the <head> section document.body will be NULL and if you place it just prior to the </body> tag it also does not appear to function properly however you can set the window.onload and window.onunload attributes through code, the executes successfully in both IE and FF:

<body>

<script type="text/javascript">

window.onload = initialize;
window.onunload = GUnload;

</script>
</body>

In the code snippet below is a complete example web page that tested successfully in IE and FF.

Someone else might however have a better suggestion.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Events Through Script</title>
    <script type="text/javascript">
    // <![CDATA[
    
    function initialize()
    {
        alert("Hello from initialize()");
    }
    
    function GUnload()
    {
        alert("Hello from GUnload()");
    }
    
    // ]]>
    </script>
</head>
<body>
 
<script type="text/javascript">
// <![CDATA[
window.onload = initialize;
window.onunload = GUnload;
// ]]>
</script>
</body>
</html>

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.