I’m calling these pseudo‐custom events because they serve the same purpose as standard browser events: they report on certain occurrences in the UI. Here we’re using custom events to act as uniform façades to inconsistently‐implemented events. Together we’ll write some code to generate mouse:wheel
events. At the end of this article, you’ll know enough to be able to write code to generate mouse:enter
and mouse:leave
events document‐wide.
Category: JavaScript
Chris wants: stability, interoperability, security, and functionality, in that order. Yet after repeated requests to provide specific, detailed, technical reasons why ES4 doesn’t address all four of those priorities (which it does, IMHO), no answer. I have yet to see a single detailed explanation of how ES4 would “break the web.” Not from Chris, Doug, or anyone else at Microsoft. Would love to see such discussion, truly. Send me links if you know of any.
Pseudo-custom events in Prototype 1.6
The new version of iPhoto, announced not too long ago, features Web Gallery, a way to export your photo library to a .Mac web share. The sample gallery confirms that these Ajax‐heavy galleries use Prototype and Scriptaculous under the hood. It could not make me happier that Apple seem to have adopted the two libraries company‐wide.
Belated note: in case you missed my Refresh Austin talk about Prototype/Scriptaculous, you can experience the slides without having to listen to my stammering commentary.
Prototype 1.5.1 released! If you’re still running 1.5.0, you shouldn’t be. The $$
optimization alone is worth the upgrade.
Capabilities vs. Quirks: a look at browser sniffing
Two recent articles argue for an approach to writing JavaScript that relies on the individual capabilities and quirks of a browser, rather than one that relies on sniffing as a first option. This is a noble idea and one we’ve started to integrate into Prototype over the last six months. But, like everything else involving DOM scripting, it’s complicated.
Here’s something I worked on for a few hours just to amuse myself. I’d develop it further, but I can’t see how this has any sort of practical use (also note the caveats at the top of the script). So here it is: a web page desaturator. Takes all colors in linked stylesheets and turns them into grayscale versions. Here’s a demo using a page from the Prototype site. Firefox only.
Prototype 1.5.1, release candidate 1. This one contains my complete $$
overhaul, so if you query by CSS selector at all then you need to download this right now. Once 1.5.1 gets a final release (and when I’m once again sober) I’ll write a lot more about this.
Packing Prototype
Here’s a quick workflow to compress whatever version of Prototype you please.