Date post: | 19-May-2015 |
Category: |
Technology |
Upload: | marakana-inc |
View: | 1,637 times |
Download: | 1 times |
jQuery
State of the Union
Usage
40%
20%30%
2009 2010(23 million) (116 million)
jQueryRailsAjax
jQueryRailsAjax
Growth
Governance
jQuery Governance Rules
All Outlays Require a
Vote
So far:Team Meetings
ConferencesAudio/VisualUI Developer
Future Outlays:Infrastructure
DevelopersjQuery MobileTeam Meetings
Conferences
Future Outlays?
Executive Board
Rey BangoYehuda KatzJohn Resig
Jonathan SharpLeah Silber
Ralph WhitbeckRichard D. Worth
Rey BangoYehuda KatzJohn Resig
Jonathan SharpLeah Silber
Ralph WhitbeckRichard D. Worth
Conflicts of Interest
Other Areas:Advance Approval
VotesMembership
Subteams
Path to Contribution
Subteams
Dev
Dev. RelationsEventsDocs
jQuery UI Infrastructure Design
Mobile
Clear Description
Mentoring New
Contributors
Contributor License
Agreement
Finalized
The jQuery project will
own the code
Ownership can be transferred
only to an entity agreeing with the same rules
jQuery will always be
Open Source
jQuery will always be
Open Source.
Adoption
Adobe
Adobe Hearts jQuery
“In short, we believe jQuery has become a nearly standard library of the web. In many ways, it is no longer just about one project but really belongs to the web as a whole.
Code
jQuery 1.4.3
JSLint
Enforce Style
$ make lint
Modularity
All jQuery can be individually
loaded
Script Loader?
Big win:
Test suite without a build step
CSS
Full rewrite of the CSS module
Purpose:
Extensibility
Purpose:
Extensibility(Performance)
jQuery.rotate
jQuery.cssHooks.rotate = { set: function( elem, value ) { var _support = support, supportTransform = _support.transform, cos, sin, centerOrigin; if (typeof value === 'string') { value = toRadian(value); } $.data( elem, 'transform', { rotate: value });
Native Performance
Where Possible
Official Plugins
datalink
Link forms live with JS
Objects
Developed with
Microsoft
var user = new User();
$("form").link(user, { firstName: "first-name", lastName: "last-name"})
var product = {};
$("#rank").link(product, { salesRank: { convertBack: function(val, source, target) { $(target).height(value * 2); } }});
$(product).data("salesRank", 12);alert($("#rank").height()); // 24
(general .data improvement)
jQuery Template
Also developed
with Microsoft
$("#test").append( "<li><em>${name}</em> (${year})</li>", data)
var data = { firstName: "Yehuda" };$("#item").tmpl(data).appendTo("ul");
<script id="item" type="text/html"> <li>${firstName}</li></script>
var lastItem = $("ul").tmplItem();var person = lastItem.data;var htmlNodes = lastItem.nodes;
Plugins: Focusing on
full apps
jQuery Mobile
Lots of platforms
// HANDLE: $("#id")} else { elem = document.getElementById( match[2] );
// Check parentNode to catch when Blackberry 4.6 returns // nodes that are no longer in the document #6963 if ( elem && elem.parentNode ) {
BlackberryOpera
Windows MobileMobile Firefox
Symbianetc.
Phase 1:jQuery Core
Fix bugs in all major
browsers
(A and B graded
browsers)
Phase 1 is a continuing
effort
Phase 2:jQuery Mobile
A framework for building mobile web
sites
Widgets+
Layout
jQuery 1.5
More Bugfixes
More Bugfixes(including
mobile)
Rewrite of .attr()
Rewrite of $.ajax()
jQuery.subclass
var myQuery = jQuery.subclass();
myQuery.fn.getId = function() { return this.id;}
jQuery("#foo").getId() // errormyQuery("#foo").getId() // "foo"
Personally
Porting SproutCore
improvements into jQuery Core
Plus official plugins
Basically:
HTML5 features
Thank you!
Questions?