| // Copyright 2015 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| [ |
| CustomConstructor, |
| ] interface Element : ParentNode { |
| readonly attribute DOMString tagName; |
| |
| boolean hasAttribute(DOMString name); |
| [TreatReturnedNullStringAs=Null] DOMString getAttribute(DOMString name); |
| [CustomElementCallbacks, RaisesException] void setAttribute(DOMString name, optional DOMString? value); |
| [CustomElementCallbacks] void removeAttribute(DOMString name); |
| |
| sequence<Attr> getAttributes(); |
| |
| readonly attribute ShadowRoot shadowRoot; |
| |
| // TODO(abarth): Move to Node. |
| readonly attribute CSSStyleDeclaration style; |
| |
| // TODO(abarth): Remove these when we implement more of the system. |
| [RaisesException] boolean matches(DOMString selectors); |
| void focus(); |
| void blur(); |
| attribute long tabIndex; |
| readonly attribute DOMTokenList classList; |
| [RaisesException] ShadowRoot ensureShadowRoot(); |
| |
| ClientRect getBoundingClientRect(); |
| readonly attribute long offsetLeft; |
| readonly attribute long offsetTop; |
| readonly attribute long offsetWidth; |
| readonly attribute long offsetHeight; |
| readonly attribute Element offsetParent; |
| readonly attribute long clientLeft; |
| readonly attribute long clientTop; |
| readonly attribute long clientWidth; |
| readonly attribute long clientHeight; |
| }; |