It looks like using Sys.Application.add_init() instead of document.ready() or pageLoad() in my Master Page resolved my issue.
Details about my issue are probably too lengthy but it may help someone else if I try to at least nutshell what's going on.
My Master Page has a "navigation" contenttemplate that houses the ASP.NET TreeView control. I wanted to keep the scrolled position (it has quite a few nodes in it) of that TreeView after postbacks. In order to do this, I attach a call to the following js function on the onscroll event of a div surrounding my TreeView control:
function SetDivScrollPosition() {
var strCook = document.cookie;
if (strCook.length > 0) {
var cookies = strCook.split(";");
for (var i = 0; i < cookies.length; i++) {
var mySplit = cookies[i].split("=");
document.getElementById(mySplit[0].replace(" ", "")).scrollTop = mySplit[1];
}
}
}
However, I also have other scrollable divs in other content pages and I wanted to also keep track of those scrollable positions after postbacks (full or partial). So, what I had to do was to also call SetDivScrollPosition() from those content pages' document.ready() function.