I'd personally be pretty happy with < 2K. The main things I use jQuery for are: 1) selecting nodes (especially children of selected nodes), 2) manipulating node attributes, 3) AJAX, 4) extend(), 5) animating CSS, 6) normalizing some events.
It seems like only yesterday that jQuery was the simple, lightweight alternative. I wonder how long it will be before things like this and Zepto add enough features to earn accusations of bloat.
This is great. Thanks for the link! The example in the readme suggests that jslim can reduce simple apps combined with jQuery by up 28%. I wonder if it can achieve more if jQuery was modified to let you specify selectors by function calls instead of selector string. For calls like $("a.button"), the static analyzer may have trouble removing unused code such as the parts that deal with descendant selector, ID selector. If selectors where specified as function calls like $.find($.byTag("a").byClass("button")), static analyzer may identify and remove more dead code. Though it probably isn't worth the effort if the code requires such drastic modifications.
"cross-browser" is a misnomer that seems to have been invented by DOM library authors as a marketing tool.
If we're talking about the en vogue subset of browsers, then QSA has support. If we're talking about a set of browsers where a usable DOM implementation is provided (most dating back to Netscape), then, no, support is not provided.
"Works in all browsers" should be closer to the latter, not the former.
I don't get it. The featureset on this project is so small that for anything else than a simple testpage it won't be good enough. And for a case like that, you can simply do vanilla DOM scripting yourself. If you want a library that's like jQuery but smaller simply use Zepto.
What I want is a jQuery-like library that can dynamically load alternative versions based on the browser in use, so that modern browsers load something close to zepto, while IE6 loads all the fixin's.
19 comments
[ 3.4 ms ] story [ 57.0 ms ] threadIt's already at 483 bytes. Where do you go from here?
https://github.com/ender-js/jeesh
Looks pretty "crossbrowser" to me. Seems to be supported on many mobile browsers too based on that link.
The only possible issue I see here is IE < 8 but then again, I'm not sure I'd want to bother with IE6/7 support.
If we're talking about the en vogue subset of browsers, then QSA has support. If we're talking about a set of browsers where a usable DOM implementation is provided (most dating back to Netscape), then, no, support is not provided.
"Works in all browsers" should be closer to the latter, not the former.
I can write off that idea then.
But you could load Zepto if the browser supports it, and otherwise load jQuery because their API is the same.