This is a classic case of why you don't necessarily make a UI element look like something real. Every time I used the toggle switches, I just wanted to "swish" them with the mouse (a completely awkward gesture), even though they technically respond to simple on/off clicks like checkboxes do. So all they've done is make the "easy" behavior unintuitive, while almost encouraging an awkward gesture.
I agree that we shouldn't automatically copy and past UI elements from one platform to every other, unless they present real usability benefits to those other platforms.
But one benefit I can see is that these switches increase the target area, which I've always found to be somewhat small with checkboxes and radio buttons...
Edit: it has keyboard support indeed. I've just tried and works perfect. Pressing space switches the checkbox state and tab switches between checkboxes.
It's a pretty damn good job.
<s>I bet it's not too dificult to add keyboard support to them</s>
You use Prototype on your iPhone sites? I’ve tried to avoid using libraries on mobile sites as they add a fair chunk of download and processing overhead.
Actually, it’d be nice to see a Webkit specific (or at least modern browser specific) JS library that dumps IE workarounds and fallback DOM selection routines; leaves us with syntactic sugar for QuerySelector and XMLHTTPRequest, and an animation library.
Most of the code in jQuery is not to work around IE, it's for features you actually want. So I doubt this would buy you much savings, especially when gzipped.
Actually, mooSwitch has been around since 2008 and has always supported both click and drag, however, I don't believe it actually works on the iPhone (quite a thing to miss):
just because it looks cool on another platform doesn't mean it's needed or useful in a regular web browser. the majority of people who use web browsers probably don't use an iphone, so the interface wouldn't make sense to them.