JQuery 1.3 domination through deprecation

jquery 1.3

On a project I maintain, we recently rolled up to JQuery 1.3.1 from JQuery 1.2.6. Upon doing so, several things instantly broke.

I started seeing errors on lines like this:

if($('input[@name=username]').val() != "")

I decided to check the JQuery 1.3 relase notes to see what had changed.

The first bullet point answered my problem:

The ‘@’ in [@attr] has been removed. Deprecated since 1.2 this old syntax no longer works. Simply remove the @ to upgrade.

As it turns out, the @ style selector was depricated and wasn’t suggested for use when JQuery 1.2 was released, but it was still supported. At 1.3 the @ style selector was removed all together, and as a result broke our code!

Following the upgrade instruction I removed the @ symbol from the selectors, and the code started running again.

The result:

if($('input[name=username]').val() != "")

A simple and effective upgrade, and a reason to closely pay attention to release notes