- From: Ian Hickson <ian@hixie.ch>
- Date: Wed, 5 Sep 2007 19:04:39 +0000 (UTC)
- To: Marek Pawłowski <marekp.w3c@gmail.com>
- Cc: public-html@w3.org
- Message-ID: <Pine.LNX.4.64.0709051823000.3943@dhalsim.dreamhost.com>
On Wed, 5 Sep 2007, Marek Pawłowski wrote: > > 1. I suggest DOMTokenList methods add() and remove() return > DOMTokenList itself. This would allow for useful function chaining, > f.e.: > > myDiv.classList.add('toFront').toggle('maximized'); Wouldn't: with (myDiv.classList) { add('toFront'); toggle('maximized'); } ...be the better way to do this? In general the DOM doesn't do chaining-style APIs, so I'm reluctant to add it here. > 2. Anyway, I know that this was discussed on WHATWG list but why not > extend className instead of adding classList? Is this producing some > serious compatibility problems? As I understand current spec classList > stringify to the same value as className. Basically, you can't, because in JS strings are immutable. The spec used to be that way, but it doesn't work. > 3. I'm not sure if it is intended but with current algorithms for adding > token in add() and toggle() methods when DOMTokenList object's > underlying string is empty it ends up with value of U+0020 SPACE + > token. Shouldn't there be condition that if underlying string is empty > then append only token? I believe that today's common way of obtaining > classList is via: > > classArray = myDiv.classList.split(' '); > > With current algorithm it will lead to array with additional empty > elemets and could cause some compatibility problems with existing pages. Yeah, I'll fix that eventually (I think that's been raised before). Cheers, -- Ian Hickson U+1047E )\._.,--....,'``. fL http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,. Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
Received on Wednesday, 5 September 2007 19:05:36 UTC