Re: Convenient way to create element and set its attributes at once

"Tab Atkins Jr." <[email protected]>
Newsgroups gmane.comp.web.dom.general
Message-ID <CAAWBYDC96yZaad8S1oonWbzCfS22hTjdhZ66QZ7oJGBsEXMz_Q@mail.gmail.com>
On Mon, Dec 2, 2013 at 10:32 AM, Domenic Denicola
<[email protected]> wrote:
> From: Tab Atkins Jr. <[email protected]>
>> It would be useful for HTML to do the same, so you could call "new HTML.div(...)" instead of "new HTMLDivElement(...)".
>
> This seems like a really cool plan. (Although of course ES6 modules would be better, but, no need to hold up the platform waiting for them... namespaces are fine in the meantime.)

Agreed.

>> It would also let us establish a one-to-one constructor to tagname correspondence, so "HTML.h1()" works instead of "HTMLHeadingElement('h1',...)".
>
> I guess it would not be a constructor in that case though, i.e. you'd do `var myH1 = HTML.h1()` instead of `var myH1 = new HTML.h1()`, since otherwise you would break the `new X instanceof X` invariant.

Hm, I don't understand.  instanceof just walks the prototype chains,
and the functions denoted by "HTMLHeadingElement" and "HTML.h1" can
have the same prototype.  I suspect I'm missing something in your
statement.

~TJ
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.