- From: Anne van Kesteren <annevk@opera.com>
- Date: Tue, 26 Jul 2011 11:13:48 -0700
- To: "public-web-perf@w3.org" <public-web-perf@w3.org>, "Jatinder Mann" <jmann@microsoft.com>
On Tue, 26 Jul 2011 11:09:03 -0700, Jatinder Mann <jmann@microsoft.com> wrote: > 1. The hidden attribute on Document is potentially confusing with the > hidden attribute existing on all HTML elements, especially as the > Document object sometimes shares such global HTML attributes (dir and > numerous event handler attributes). Maybe isVisible would be better? > > My understanding is that the HTML5 hidden attribute is only defined for > HTML elements, which would preclude the Document object as it inherits > from Node. There is no conflict here. There is no conflict, but possibility for confusion given that Document does share some attributes with elements that have the same semantics. > Using document.hidden would make feature detection easier than using > document.isVisible. For example, using if (document.isVisible) for > feature detection has the downside that the undefined case, which legacy > browsers would hit, is equal to the not visible case - legacy browsers > will get the behavior defined for the hidden page. Doing feature > detection on document.hidden will ensure that the undefined case is > equal to the visible page case - legacy browsers will get the page with > the visible behavior. Just use ("isVisible" in document). > 3. We use strings in a number of APIs and it is clearly a better > approach however none of these APIs currently expose them as constants > and I do not think there is a good reason to do that. Examples of such > APIs are XMLHttpRequest (the responseType attribute) and the HTML Canvas > 2D Context (numerous attributes). > > Constants have the advantage of allowing web developers to inspect for > capability via developer tools and IDEs rather than read documentation > to find out which strings are supported. I do not think that argument is compelling enough to deviate from the established conventions for web platform APIs. > 5. Instead of using [NoInterfaceObject], a different interface name, and > implements, please simply use "partial interface Document". > > My understanding is that using [NoInterfaceObject] with a different > interface name and implements is functionally the same as using "partial > interface Document". Is this not the case? It differs somewhat for non-ECMAScript bindings. -- Anne van Kesteren http://annevankesteren.nl/
Received on Tuesday, 26 July 2011 18:14:28 UTC