Hook a javascript event to page load

I have an aspx that has the following javascript function being ran during the onload event of the body.

<body onload="startClock();">

However, I’m setting the aspx up to use a master page, so the body tag doesn’t exist in the aspx anymore. How do I go about registering the startClock function to run when the page is hit and still have it use a masterpage?

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

If you don’t want to explicitly assign window.onload or use a framework, consider:

<script type="text/javascript">
function startClock(){
    //do onload work
}
if(window.addEventListener) {
    window.addEventListener('load',startClock,false); //W3C
} else {
    window.attachEvent('onload',startClock); //IE
}
</script>

http://www.quirksmode.org/js/events_advanced.html

Method 2

Insert this anywhere in the body of the page:

<script type="text/javascript">
window.onload = function(){
    //do something here
}
</script>

Method 3

The cleanest way is using a javascript framework like jQuery.
In jQuery you could define the on-load function in the following way:

$(function() {
    // ...
});

Or, if you don’t like the short $(); style:

$(document).ready(function() {
    // ...
});

Method 4

window.addEventListener("load", function() {
    startClock();
});

This will invoke the startClock function at page load.

Method 5

Page.ClientScriptManager.RegisterStartupScrip(this.GetType(), "startup", "startClock();", true);

or using prototype

document.observe("dom:loaded", function() {
  // code here
});


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x