Simple URL parameters in JS

Nowadays when most of you do the heavy lifting in JS, chances are you want to lookup URL parameters. I definitely need it often, and I have a little snippet that converts params in your URL to a nice JS object. Here it goes: // this object gets filled with params var params = {}; […]

HTML5 D&D: dataTransfer data has to be set to allow drop

This is a quick tip for those that are still bold (or stupid) enough to try the incredibly messy HTML5 Drag & Drop spec. If you’re dragging div’s around and made them draggable (draggable=true) but wonder why the “dragover” event never fires on the target on Chrome: You have to set data on the transfer. […]

Real-world APIs

My friend Nicolas is defending localStorage in his blog, and I want to show my full support. In particular, this following sentence caught my eye and should make you curious: [It] absolutely stinks of browser developers creating an API that’s easy to implement rather than creating an API that’s easy to consume. This is the […]

The jQuery Foundation

Today, I’m incredibly proud and happy to read about the launch of the new jQuery Foundation, and rather than doing a quick tweet, thought I’d write down a couple words to congratulate all members of the jQuery team, and all jQuery users. I was one of the original six signers of the documents when we […]

Enabling the internal debug menu of Safari

I promised my next blog post will be positive, so here we go. Few people know this, but while Safari debugging on iOS doesn’t exist, Safari debugging on PC is actually fairly useful. There will be a more elaborate blog post following soon, but this first little goodie will get you going first. Paste this […]

On accurately measuring fps

If you look for a quick solution, I have bad news: It’s not possible. Not even close. Well, in the browser at least. For many subsequent years, smart web developers have tried and failed to produce accurate ways to measure something that comes close to displayed frames per second on websites. Something that’d been so […]

On creating great products

People who know me are aware that I have been, and still am a long time supporter of the open web stack, and I have talked a dozen times about how HTML5, CSS3 and JavaScript is the only way to produce apps, sites and games that run cross-platform, accessible to the widest audience possible. Now […]

Scroller vs. Scrollability deathmatch!

I recently had an interesting Twitter exchange with Joe Hewitt on our (as in Zynga) newly released Scroller that is somewhat in direct competition with his excellent Scrollability plugin. Both share at least one similar ambition: To give us native-feel iOS panning wherever we want it. Joe even recently blogged about how to do fast […]