From jQuery JavaScript Library
ROUGH NOTES This is just some rough notes for things to look at for 1.3.x/1.4.
Core
- jQuery.require (require JavaScript modules and CSS to load before ready runs)
jQuery.require("foo.js");
jQuery.require("foo2.js");
jQuery(function(){ ... });
See also xLazyLoader
- Dynamic loading of modules when they're needed (would require synchronous script loading in core)
- $.ready failover. If not enough functionality is provided, have ready gracefully not load.
- Widget Factory
-
.toArray() (As alternative to .get())
-
.get(-1) Allow for negative numbers to .get().
-
$.isObject() (Possibly for use by deep extending)
-
Use $.isArray() and $.isObject() for deep extending Discussion, Discussion
- Implicit ready event like Mike Alsup is doing with his plugins now.
DOM
-
$.contains (determine if an element is inside another one)
jQuery("div").contains(DOMElement)
Selectors
Attributes / CSS
- Rewrite
(reorganize and separate these two pieces of functionality) (reorganized and separated in 1.3.3)
- Deactivate alpha filter in IE when set to 1.0
-
Get filter value from stylesheet for alpha
-
Allowing a function as the "setter" argument for .css() -- like we have in .attr() -- and maybe for .val(), .html(), and .text() as well.
- Allow retrieval of multiple attributes/styles using a space separated string
-
Enhance .toggleClass (in 1.3.3)
- .radioClass()
-
colSpan
Data
Offset
Events
Ajax
$.ajax(type, url, options);
- Support options argument in $.get and $.post
$.get(url, data, dataType, options);
$.post(url, data, dataType, options);
Effects
Structure
-
Reduce the number of function calls needed for common jQuery methods
-
Split up jQuery structure into smaller modules (core, traversing, manipulation, attributes/css)
- Make it possible to only load the core module and be able to load all the rest dynamically
- Seems like this would force us to expose a lot of the private methods/properties we have right now and potentially ditch the use of a closure.
- Passing the XHTML test suite
- Passing Object.prototype tests
-
Cache static objects
-
Standardize RegExp usage (in 1.3.3)
-
Improve RegExp Callbacks (in 1.3.3)
- Working in evalInSandbox
- Keep a separate data() cache for the document object (to avoid any obvious pollution).
- Work as a Caja Gadget [2][3]
Testing
- Runnable DOM Ready tests
- Object.prototype tests
- Integrate test suites from plugins into jQuery test suite
Misc