Bug 70929
| Summary: | Most DOM attributes should be on the corresponding interface prototype | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Andy E <andyearnshaw> |
| Component: | DOM | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | ||
| Priority: | P2 | ||
| Version: | 528+ (Nightly build) | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Andy E
Section 4.5.5 of the Web IDL, http://www.w3.org/TR/WebIDL/#es-attributes, states that
"For each attribute defined on the interface, there must exist
a corresponding property. If the attribute was declared with
the [Unforgeable] extended attribute, then the property exists
on every object that implements the interface. Otherwise, it
exists on the interface’s interface prototype object."
WebKit, however, appears to define these as instance properties. This introduces several incompatibilities, such as checking own properties or getting property descriptors. For a specific example, In WebKit and Presto:
> document.body.hasOwnProperty("style")
// -> true
In Trident and Gecko:
> document.body.hasOwnProperty("style")
// -> false
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Alexey Proskuryakov
*** This bug has been marked as a duplicate of bug 68002 ***