The mv_embed.js includes a doLoad function that matches the autoLoadJS classes listed in mediaWiki php. So you can dynamically "autoload" arbitrary "sets" of classes (js-files in the mediaWiki software) in a single http request and then run something once they are loaded. It can also "autoload" sets of wiki-titles for user-space scripts again in a single request grouping, localizing, gziping and caching all the requested wiki-title js in a single request. This is nifty cuz say your script has localized msg. You can fill these in in user-space MediaWiki:myMsg then put them in the header of your user-script, then have localized msg in user-space javascript ;) .. When I get a chance I will better document this ;) But its basically outlined here: http://www.mediawiki.org/wiki/Extension:ScriptLoader
The link you highlight appears to be about running stuff once the page is ready. jQuery includes a function $(document).ready(function(){ //code to run now that the dom-state is ready }) so your enabled gadget could use that to make sure the dom is ready before executing some functions. (Depending on the type of js functionality your adding it /may/ be better to load on-demand once a new interface component is invoked rather than front load everything. Looking at the add-media-wizard gadget on testing.wikipedia.org for an idea of how this works. peace, --michael Sergey Chernyshev wrote: > Yep, with jQuery in the core it's probably best to just bundle it. > > There is another issue with the code loading and stuff - making JS libraries > call a callback function when they load and all the functionality to be > there instead of relying on browser to block everything until library is > loaded. This is quite advance thing considering that all the code will have > to be converted to this model, but it will allow for much better performance > when implemented. Still it's probably "Phase 5" kind of optimization, but it > can bring really good results considering JS being the biggest blocker. > > More on the topic is on Steve Souders' blog: > http://www.stevesouders.com/blog/2008/12/27/coupling-async-scripts/ > > Thank you, > > Sergey > > > -- > Sergey Chernyshev > http://www.sergeychernyshev.com/ > > > On Wed, Apr 22, 2009 at 12:42 PM, Brion Vibber <br...@wikimedia.org> wrote: > > >> On 4/22/09 9:33 AM, Sergey Chernyshev wrote: >> >>> Exactly because this is the kind of requests we're going to get, I think >>> >> it >> >>> makes sense not to have any library bundled by default, but have a >>> centralized handling for libraries, e.g. one extension asks for latest >>> jQuery and latest YUI and MW loads them, another extension asks for >>> >> jQuery >> >>> only and so on. >>> >> Considering we want core code to be able to use jQuery, I think the case >> for bundling it is pretty strong. :) >> >> -- brion >> >> _______________________________________________ >> Wikitech-l mailing list >> Wikitech-l@lists.wikimedia.org >> https://lists.wikimedia.org/mailman/listinfo/wikitech-l >> >> > _______________________________________________ > Wikitech-l mailing list > Wikitech-l@lists.wikimedia.org > https://lists.wikimedia.org/mailman/listinfo/wikitech-l > _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l