Tags: scripting
A terrific piece by Remy—based on a talk he gave—on when he uses jQuery and, more importantly, when he doesn’t. His experiences and conclusions pretty much mirror my own, but of course Remy is far more thoughtful and smart than I.
Really good stuff.
I like the sound of the book that Chris is writing for Smashing Magazine. It sounds like a very future-friendly approach to front-end development.
This is handy: a look at which DOM properties and methods cause layout thrashing (reflows).
Remember when I made that canvas sparkline script? Remember when Stuart grant my wish for an SVG version? Well, now Tom has gone one further and created a hosted version on sparksvg.me
Not a fan of sparklines? Bars and circles are also available.
This looks like a handy way of enhancing forms to have input masks (Luke W. would approve). Right now it’s a jQuery plug-in but I’m sure someone as smart as you would be able to create a standalone version, right?
This looks great! It’s a CC-licensed book by Cody Lindley (whose work I’ve admired for many years) aimed at teaching DOM Scripting for modern browsers. You can read the whole thing online or wait for the paper version from O’Reilly.
If all your JavaScript currently consists of writing jQuery plugins, I highly recommend you read this.
Here’s something that Josh debuted at Smashing Conference: a script for responsive designs to adjust font-sizes based on a desired line-length.
Inevitably, it’s a jQuery plugin but I’m sure somebody could fork it to create a standalone version (hint, hint).
This is excellent! Scott, Wilto, and the gang at Filament Group have released the tools they use to help them craft performant responsive sites. Lots of excellent resources for conditional loading here.
I really like this trend of small standalone scripts rather than plug-ins that require the presence of a library.
This cracked me up. There are two possibilities: either this is really is very funny or I am very nerdy.
That Scott is one smart cookie. He has come up with a workaround (using the accelerometer) for that annoying Mobile Safari orientation/zoom bug that I blogged about recently.
I still want Apple to fix this bug as soon as possible—the fact that such smart people are spending so much effort on ingenious hacks shows just how much of a pain-point this is.
I’ve found myself using jQuery less and less recently. Partly to avoid the extra download and file size but also—as shown here—when it comes to DOM manipulation, there’s a lot you can do straight out of the box.
An in-depth look at browser polyfills: what they are, how they work, and how you can make your own.
Jake Archibald has a blog now. Subscribed.
Now this is intriguing: putting your default images inside a noscript element, then do your viewport measuring and image-swapping before removing the noscript tags. But when I tried this a while back, I couldn’t get access to the noscript elements with JavaScript (which makes sense, when you think about it).
I wonder if it’s the use of class names or jQuery that allows it to work here?
An ingenious loading indicator that uses JavaScript instead of an animated .gif.
A quick overview and explanation of web intents.
This is your one-stop shop for envelope-pushing in the browser:
The very best of creative JavaScript and HTML5.
This could be a handy: a client-side spellchecker. The dictionary files are a bit big of course—maybe local storage could help.
Kenny Meyers on the ubiquity of JavaScript.
This looks like it could be a handy little tool for creating test cases with HTML, CSS and JavaScript.
A $15 PDF book on jQuery from Cody Lindley.
Asteroids implemented using HTML5's canvas.
Brendan Dawes pointed me to this wonderfully playful creation. It's Flash-free, believe it or not.
Here's an interesting idea: generating a sparkline when you input a password ...familiarity with the generated sparkline acts as a visual aid to the user.
The BBC have released their JavaScript library. This one is worth paying attention to for its wide browser support base.
The classic arcade game, recreated using the JavaScript/SVG library Raphaël.
A detailed comparison of jQuery and MooTools.
Stuart has an interesting take on ARAI attributes. Why can't they be set declaratively in an external file in the same way as we set styles?
A nice way to play around with Google's APIs. Example code is provided which you can edit and immediately see the results.
Remy teaches non-techies how to use jQuery in a responsible way.
An excellent overview of Ajax and optimisation.
This is certainly the most backwards-compatible JavaScript library out there.
Cameron made a drum machine in JavaScript. This is further proof that the man in blue is possibly even more insane than John Resig. Nuts! Nuts, I tell you!
John Resig offers an alternative user interface for selecting a time.
An in-depth look at the intersection of JavaScript and screen readers, concentrating on events in particular.
Holy crap! A ZX Spectrum emulator built entirely in JavaScript. I cannot adequately describe the Proustian sensation I get from playing Manic Miner in a browser.
Download a PDF of PPK's slides from his JavaScript workshop at Fundamentos Web. There's some good advice contained therein.
A wonderful example of why the patent system is so totally b0rked and completely unsuited to software. Someone patent Ajax (or Remote Scripting, if you prefer) back in 2001. Un. Bel. Eeeevable.
Christian is using the prize money he won at Mashed to put on an event in London in September devoted to "ethical hacking": creating mashups to make social networks more accessible.
Google is now hosting all the major JavaScript libraries. The caching benefits should be good news for your users.
This looks like it could be a very valuable resource indeed: a user-contributed and edited reference for HTML, CSS and JavaScript.
Cam's latest experiment is insane but brilliant ...sort of like Cam himself.
Simon's slides and demos from his half-day workshop at XTech.
Ignore the attention-grabbing headline. Brothercake is something more nuanced here (and he's backing it up with examples).
Okay, you have to be a real JavaScript/HTML geek to find this funny but check this out: document.write('<noscript>...'); Madness!
A handy cheat sheet of jQuery methods to print out and keep on hand.
This is a good straightforward hands-on explanation of Ajax: succinct and clear.
PPK has once again been doing sterling work. He's updated the DOM compatibility chart and things are actually looking pretty good.
From the people who brought you jQuery comes a set of widgets built using jQuery complete with documentation and tutorials.
A nice succinct explanation of how to roll your own JavaScript event delegation from Andy Hume.
Okay, this started as a joke but then I couldn't resist writing a bit of code. Usage: OH_HAI.I_CAN_HAS_ELEMENT_BY_ID("Id") and OH_HAI.I_CAN_HAS_ELEMENTS_BY_TAG_NAME("tag").
DOM Scripting... now also available in Korean.
What excellent taste this web design shop has. I don't mean the fancy scrolling—I'm talking about what's on the bookshelf.
A collection of scripts. There might be some good stuff here but use with care and discretion.
A brilliant list of New Year's Resolutions for Coders.
Christian's wish list for JavaScript libraries.
How much page weight is being wasted on JavaScript. It's time to shed those pounds.
A PDF of Dan's slides from RailsConf. Looks like it was an excellent presentation.
Interesting use of unobtrusive JavaScript for front page navigation. Bonus points are awarded for the hAtom and hCard markup.
A French translation of my most recent article for A List Apart.
The Spry framework from Adobe looks like it could be worth further investigation. I certainly like the underlying philosophy: lightweight, standards-based, and declarative.
A cautionary note to Rails coders from Tom. The default JavaScript includes can really add to your page weight. Only include them if you really need all of them.
Cameron has written a great article on using APIs with Ajax. I love the idea of using .htaccess to fake a proxy and get around the same-site restriction.
Dan Webb does an excellent job of comparing the big four JavaScript libraries that were discussed at @media.
If you use the Yahoo JavaScript libraries a lot, these cheat sheets (inspired by those of fellow Brightonian, Dave Childs) should come in very handy.
Garret gives an excellent, excellent round-up of the factors involved in the behaviour layer of front-end architecture (that's 'building websites' to you and me).
Dustin has written Tetris in JavaScript (using the Yahoo library). Nifty!
The slides of the Hijax talk from the Ajax Developer's Day at XTech 2006 in Amsterdam.
John has been working behind the scenes on this for quite a while and now it's ready for launch. Lots of yummy standards-based goodness in bite-sized chunks.
Douglas Crockford has written a wrapper function to allow the easy interchange of JSON data between servers.
Respect the DOM t-shirt
This <a href="http://bingo.adactio.com/">looks familiar</a>. Great minds think alike.
(For some reason, this page has 76 divs and 50 tables. Yikes!)
Yes, Ajax is over-used but here are some cases where it really helps.
My fellow Brightonian geek, Dom, has written an article about using Perl and Ajax.
A transcript of the Q&A session with Dave.
"...it must degrade well. It must still be accessible. It must be usable. If not, it is a cool useless piece of rubbish for some or many people."
One great web development tip for every day in the Advent calendar, courtesy of Drew McLellan
Who knew? The way I do my Ajax is a microformat. AHAH: Asynchronous HTML and HTTP.
The W3C proves that it can move with the times: "The mission of the W3C Web API Working Group is to develop specifications that enable improved client-side application development on the Web." This is very good news indeed.
Download the PDF of the slides and play around with the demo from Tim Lucas' recent presentation.
Ajax in The Guardian.
Here's a really nice implementation of my JavaScript slideshow script.
Yet another Ajax implementation, but this one is making some bold claims regarding accesibility. I must investigate further.
A nice introduction the XMLHttpRequest object by Cameron Adams.
An excellent alternative to the inline cruft so common in most Ajax applications.
Documentation for the new Google Maps API. Unlike most web services, this one is run entirely over JavaScript.
A Greasemonkey version of my zoom layout bookmarklet. Great stuff!
A library of JavaScript classes: not very unobtrusive, not much graceful degradation. I think we need a bit less hype and a bit more questioning.
So it begins... dispelling the myths and spreading the good word about DOM Scripting.
Mike Stenhouse tackles the usability concerns raised by Ajax apps, specifically the breaking of the back button functionality.
Brendan Eich, inventor of JavaScript, weighs in with some thoughts on JavaScript 2.
Stuart has posted an excellent round-up of the London JavaScript meetup.
A library of JavaScript for rich internet applications.
A nice round-up of the Ajax summit.
A nice bit of unobtrusive DOM scripting for validating just about any form.
Google now offer a DOM-driven widget for dragging and dropping page sections.
A truly excellent piece of DOM scripting by Steve Chipman that replaces checkboxes with images.