Upload
marakana-inc
View
1.636
Download
1
Tags:
Embed Size (px)
DESCRIPTION
What's the state of the most popular JavaScript library today? What's in-store for upcoming releases? At an event hosted at Microsoft on November 9th, 2010, Yehuda Katz (a core member of the jQuery team) talked about updates planned for jQuery 1.4.3 and plans for jQuery 1.5, due next year. He also covers: - initiatives of the jQuery project - jQuery mobile - formalizing governance of the jQuery project ** See the video at: http://marakana.com/f/12312 ** Stay tuned for videos of these presentations from this event: - jQuery jump start (15 min. session to get you productive with the JavaScript frameworks) - jQuery with ASP.NET and Visual Studio Walk-through - How jQuery continues to drive innovation with emerging technologies In the meantime, check out more videos on open source development at: http://marakana.com/techtv
Citation preview
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?