Wow, good point! That's a better way for me to do FossilHub stuff, I think! I didn't notice that the header can specify the <head> element...
On Sat, Mar 26, 2011 at 1:54 PM, George Jempty <cons...@dexygen.com> wrote: > By placing the below script in the UI's header immediately above the > closing </head> tag, I've managed to emulate the document/ready behavior of > various Javascript frameworks such as jQuery. Instead of trying to optimize > for the various browsers, I just rely on what works for the least common > denominator, IE. Please refer to > http://ryanmorr.com/archives/ondomready-no-browser-sniffing and/or > http://stackoverflow.com/questions/799981/document-ready-equivalent-without-jquery > to > take note of how IE checks for document.documentElement. > > <script> > //console.log('script begin: ' + (new Date()).getTime()); > > var fossil_ui = {'ready': function() { > alert('fossil ui ready!'); > }}; > > fossil_ui.ready_interval = setInterval(function() { > var docEl = document.documentElement; > if (docEl) { > clearInterval(fossil_ui.ready_interval); > //console.log('dom ready: ' + (new Date()).getTime()); > fossil_ui.ready(); > } > }, 2); > </script> > > This approach allows DOM manipulation before/without the body/onload event. > I've tested it on IE, FF, Chrome & Safari (I suppose I can go download > Opera too ;) To demonstrate that this allows the DOM to be scripted before > all body elements finish loading, comment in the console.log statements, and > modify the body tag as follows: > > <body onload="console.log('body loaded: ' + (new Date()).getTime())"> > > Then in FF (or another browser that supports console/log), I got the > following when I did a hard-refresh (to circumvent caching) of the UI home > page: > > script begin: 1301164708735 > dom ready: 1301164708782 > body loaded: 1301164708965 > > Being able to work with the DOM before the body loads can be important, > particularly if images or other elements for some reason take an inordinate > amount of time to download, plus de-coupling from the body/onload event > allows scripting with as few dependencies as possible. Please consider this > as the first step toward possibly warranting a separate Javascript file for > inclusion, not unlike the style.css file. > > > > _______________________________________________ > fossil-users mailing list > fossil-users@lists.fossil-scm.org > http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users > >
_______________________________________________ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users