- From: None via GitHub <sysbot+gh@w3.org>
- Date: Sat, 17 Oct 2015 11:35:53 +0000
- To: www-dom@w3.org
ArkadiuszMichalski has just created a new issue for https://github.com/whatwg/dom: == DOMTokenList/DOMSettableTokenList and associated attribute or attribute’s local name == What exactly DOMTokenList and DOMSettableTokenList have associated? Now I see some inaccuracy: "A DOMTokenList object also has an associated element and an attribute’s local name." "A DOMSettableTokenList object is equivalent to a DOMTokenList object without an associated attribute." And in update steps: "1. If there is no associated attribute (when the object is a DOMSettableTokenList), terminate these steps." So DOMTokenList has associated attribute (and we can directly check them) or some attribute’s local name, and we must firstly find this attribute by using this local name? Update steps invoke "Set an attribute value" where we pass local name, so in all above case should not be just attribute’s local name? Btw., maybe write for "ordered set serializer" what should be happen when set is empty (just return empty string). This would be clear and in the future can help capture various specific cases. I notice one different beetwen Firefox (correct per spec) and Chrome: ``` <script> var div = document.createElement("div"); document.write(div.hasAttribute("class")); // false document.write("<br>"); document.write(div.getAttribute("class")); // null document.write("<br>"); document.write(div.className.length); // 0 document.write("<br>"); document.write(div.classList.length); // 0 div.classList.add(); document.write("<br><br>"); document.write(div.hasAttribute("class")); // true, in Chrome false document.write("<br>"); document.write(div.getAttribute("class")); // "", in Chrome null document.write("<br>"); document.write(div.className.length); // 0 document.write("<br>"); document.write(div.classList.length); // 0 </script> ``` When invoking add() and remove() methods without any arguments (and set of tokens was empty and associated attr was not set) Chrome doesn't set this attr (with empty string as value), but Firefox does (what is correct per actual spec). If it's intended then Blink team should fix it. See https://github.com/whatwg/dom/issues/91
Received on Saturday, 17 October 2015 11:35:55 UTC