+1
Serving js and css from a static location would be WAY better
performance wise... orders of magnitude better...
On Wed, Mar 12, 2008 at 3:14 PM, Sachin Mittal <sjmittal(a)gmail.com> wrote:
Well I think this has to be done in steps
1. Remove all the unused js code from the albatross skin like under
scriptaculous and also the multiple prototype.js
2. In the javascript.vm and stylesheets.vm conditionally load css and js
files based on the action.
3. For better maintainability keep all js under one folder and all css under
other and images in other.
4. I am be wrong but doing step 3 would enable someone to put all the static
content under a web server say apache and use app server say tomcat to serve
only the dynamic content by bridging the two, which in turn would prove to
be a good solution for a scalable enterprise deployment.
5. Merge all the css under one or lot fewer files.
6. Also check that style.css under toucan skin is 57 kb large, so the css
size should be reduced in the merged css file(s)
Thanks
Sachin
Ludovic Dubost-2 wrote:
Yes.. we need this to be able to also create valid XHTML since CSS is
not allowed in content anyway.
MergeCSS does not work well though. We had to roll it back when we have
been using it.
Ludovic
Ludovic
Dubost wrote:
Currently the albatross skin loads around 10 js
and 10 css, which is
quite a lot.
We can improve loading time by:
- compression and cache (raffaello will provide Apache configs specific
to XWiki to help for that)
- merging and optimizations of css/js (I've published
http://www.xwiki.org/xwiki/bin/view/Code/MergeCSS to help on that)
- removing unused css/js (now we need to find which one are unused)
- conditional loading of css and js.
This last improvement can help us a lot since some of the css/js are not
even used in view mode, or are only used by a specific panel.
For this my proposal is to add a feature to the core to allow
conditional loading of CSS and JS files.
The current macros in the header would instead of putting CSS and JS add
a placeholder for additional CSS and JS.
Then everywhere where we need these CSS/JS (in a panel, in a wiki page,
in a template) we would call a macro #includecss or #includejs
This macro would add in the context the CSS and JS to add.
At the end of the template rendering the placeholder would be replaced
by the added CSS and JS.
The page would be served.
This would allow to manage the way CSS and JS are added.
WDYT ?
Ludovic
-----
http://www.assembla.com/wiki/show/sachin_mittal about me:
--
View this message in context:
http://www.nabble.com/-proposal--JS-and-CSS-improvements-tp12806140p1601250…
Sent from the XWiki- Dev mailing list archive at
Nabble.com.
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
--
'Waste of a good apple' -Samwise Gamgee