Announcement

jquery.com temporarily down

As most of you have probably noticed, the jquery.com web site is down. John Resig has posted an explanation of what is going on, but you might not be able to see it depending on your DNS settings. Here is a copy of his words, taken from his post to the discussion list:

Sat. May 5th 6pm: We suffered our second DDOS attack today and our host has asked us to no longer host the jQuery site with them. Effective immediately they have shut down all services on the jQuery server and asked us to leave. This has taken us completely by surprise and we’re working to adapt.

Sat. May 5th 11pm: Most of Saturday has been spent scrambling to offload copies of files onto other servers and to find a new host. All files have been backed up, so that is promising in-and-of itself….

Sun. May 6th 1am: An order has been placed with Rimuhosting to acquire a dedicated server for jQuery. We’re hoping that the server will be ready some time Sunday, or at the latest, Monday. All files will be immediately moved over and attempts will be made to get everything in order.

Sun. May 6th 2pm: No update from Rimu as of yet, here’s hoping they come through in a reasonable amount of time.

Also, I’ve placed yesterday’s SVN builds of jquery.js and all of the plugins at http://www.learningjquery.com/src/. Keep in mind that these are not release versions, but development versions, so please do not use them for “production” code. If someone has the latest stable release and is willing to provide a link to it, please post it in a comment. Or, send me the file (my first name at learningjquery.com) and I’ll post it here.

Latest Stable Releases:

jquery-latest.js
jquery-latest-pack.js
If you need to view the API reference, don’t forget these two excellent resources available to you: Visual jQuery and jQuery API.

UPDATE FROM JOHN RESIG:

Sun. May 6th 6pm: Just got word from Rimu that the server is being set up, and will be ready “within 12 hours”. Thanks everyone for the donations that are pouring in, I appreciate it! NOTE Temporary downloads are back up!

Thanks for hanging in there through this ordeal!

Learning jQuery, the Book

For those of you who have been following the jQuery blog the past couple months, you may have noticed John Resig’s mention of a secret: “There’s a jQuery book in the works!” Well, I am thrilled to be able to leak a little more information about that secret.

For the past few months my friend Jonathan Chaffer and I have been hard at work on the book, and everything is progressing well. Our writing is being supported by a stellar group of technical reviewers, some of whom are members of the jQuery development team. We’ll be able to divulge details about the book’s contents soon. The publisher is readying a web page for it, so as soon as that is completed, we can give you the full scoop.

About the Authors

Jonathan Chaffer is a long-time Drupal contributor and creator of Drupal’s CCK. He also likes to make up bizarre band names and album titles, based on snippets of conversations he overhears, at Tweak the Viking. Karl Swedberg (that’s me) is a jQuery zealot who runs the Learning jQuery blog and still tries to keep a bit of his former career as an English teacher alive at his other blog, English Rules. Jonathan and Karl work together at Structure Interactive in Grand Rapids, Michigan, where they have been given a lot of freedom to use jQuery, as well as standards-based, semantic HTML & CSS, in many of their projects.

jQuery 1.1.2 Released

The jQuery project team has just released version 1.1.2 of the JavaScript library. This is a bug-fix version, recommended for everyone. If you are still using a version prior to 1.1, you should be mindful of the API changes (see the jQuery 1.1 announcement for details). If you’re already using version 1.1 or later, you’re in good shape.

Here are the “new and noteworthy” updates from version 1.1 to version 1.2, as noted in the Change Log:

  • Changed: Event handlers (like element.onclick) are now removed when no more functions are bound to the event.
  • Fixed: DOM Manipulations for form elements.
  • Fixed: jQuery.isFunction to return false on nodes.
  • Fixed: jQuery.className.has, escaping regex characters in className (for metadata)
  • Fixed: an issue in IE where an event on a cloned element is fired during a .clone() inside of an event handler.
  • Fixed: IE ID selectors selecting by the name attribute.
  • Changed: Events are now internally stored in elem.$events rather than elem.events (due to a nasty bug relating to DOM 0 expandos).
  • Changed: .attr('href') is now consistent in all browsers.
  • Changed: @href is now consistent in all browsers.
  • Fixed: the slideDown flickering bug.
  • Fixed: Having a \r endline in $("...") caused a never-ending loop.
  • Fixed: IE6 AJAX memory leak
  • Fixed: bug in pushStack, reporting an element at [0] in a jQuery object with length 0

Download the jQuery 1.1.2 source directly, or visit the jquery.com download page.

Important Update: If you downloaded 1.1.2 between the time I originally posted this entry and now (2007-02-28T17:12:00+10:00), please download it again. There was a nasty Safari-crashing issue with the one posted last night.

jQuery 1.1 Released!

It’s jQuery’s first birthday, and John Resig and the development team are celebrating in style with a brand new release of jQuery!

Version 1.1 has just about every performance and feature improvement that I mentioned in my previous Year of jQuery entry — the huge speed improvements, the streamlined API, and even the much-improved documentation and website (kudos to the web and design teams!). Don’t wait another second. Abandon this blog right now and go directly to jquery.com for all of the new goodies!

Are you still here? Oh well. Then bear with me another minute while I write a bit more about the streamlined API. The new jQuery has much more speed and functionality for just a couple more kb of code. One way that was achieved was by stripping out some of the excess helper methods that appeared to be little used or redundant. If you are running jQuery on a production site, please be careful about upgrading. A good way to start is to drop in the jQuery 1.0 to 1.1 compatibility plugin (JS file), and then read through the list of API changes that John Resig outlined in a recent blog entry.

Here on Learning jQuery, we (okay, I) will be going through the old entries in the next few days, providing updated code and instructions for 1.1 in places where there might be a compatibility issue. So, keep an eye out for the jQ1.1 icon: jQ1.1

Now, really, you must stop reading this post and go get yourself some of that jQuery 1.1!

The Year of jQuery

I hereby decree that 2007 shall be the Year of jQuery. Well, what else would you expect from a blog about jQuery? But, really, this is not just another case of wishful thinking, or even one of those lame prediction posts that have been spinning around the web lately. Admittedly, the title might suffer from a touch of hyperbole. But just a touch.

Here are a few of the reasons why I think jQuery is going to explode in 2007:

  1. Massive Speed Improvements coming our way. Remember that entry I just wrote about optimizing DOM traversal? Well, pretty soon you won’t have to worry so much about that. I’ve run the speed tests (created by Yehuda Katz of Visual jQuery fame), and I’ve been blown away by the results. You will be, too.
  2. Streamlined API is nigh. While the temptation is always great for fattening up software, cramming every bell and whistle and double-cheeseburger into it, John Resig and the gang have been busily trimming jQuery, sculpting it into a lean, mean JavaScript machine. And we’ll all get more for less — more performance, more power, more sense.
  3. The plugins keep rolling in: If you haven’t checked out the growing list of plugins lately, you’re in for a treat. Also, Jörn Zaefferer, developer extraordinaire, has been on a tear lately with plugin blog entries, including a jQuery Plugin Authoring Guide, and a “plugin parade,” in which he explains how and why to use some already-made plugins.
  4. A slicker, more usable, better organized jquery.com: A group of dedicated web designers are working hard to update jQuery’s online headquarters so that visitors can find what they need quickly and know where to go for additional support.
  5. High-profile adoption: The good folks at Drupal recently announced that they plan to include jQuery in the core of their next major CMS release (5.0). Many more are sure to follow. And when other open-source communities get hooked on jQuery, the smart members of those communities inevitably contribute to the overall project. We’ve also seen some influential sites such as Technorati, Feedster, and Intuit.com put jQuery to good use, a trend that is sure to continue. What’s more, server-side technologies such as ColdFusion are embracing jQuery for its AJAX goodness.
  6. The best open-source community in the universe. I have been wowed repeatedly by how smart, thoughtful, eager, and dedicated the people who have been working on jQuery are. The many questions that come through the mailing list each day — from the mundane to the arcane — are answered promptly and respectfully. Furthermore, John Resig recently organized the project into teams to make the processes of improving jQuery, redesigning the site, and spreading the word go more smoothly and efficiently (full disclosure: John invited me to join jQuery’s “evangelism” team. Big surprise, huh? Maybe I need to start eating locusts and wild honey now.)

The coolest thing about this news is that we’ll be seeing most, if not all, of the improvements I’ve mentioned within the next couple months — some perhaps within weeks. jQuery has its first birthday coming on the 14th of this month, and it’s sure to bring some nice birthday presents for all. So, stay tuned!

jQuery 1.0.2 Now Available

John Resig just announced on the jQuery mailing list this evening that jQuery 1.0.2 has been released. According to Resig, “This release is a huge bug fix release – and it is highly recommended that you upgrade right away.”

Resig also credited Jörn Zaefferer with much of the work on this latest jQuery version:

I’d like to take this opportunity to introduce everyone to Jörn Zaefferer. Much of this release was made possible by him. He’s responsible for completely overhauling the test suite (it now has over 260+ tests!) and for fixing the majority of the current bugs and enhancements (over 60 of them!).

While version 1.0.2 mostly tightens up code and fixes bugs, John Resig and the jQuery developer community are already working on lots of cool features and enhancements for the upcoming version 1.1, so stay tuned.

Congratulations to John, Jörn, and the rest of the jQuery developers on making the best JavaScript library even better!

Downloads