在Google的Closure Compiler中,{Element}和{HTMLElement}有什么区别?

时间:2014-10-05 15:09:05

标签: javascript annotations

Closure Compiler定义{Element}和{HTMLElement},{Document}和{HTMLDocument}。我应该如何选择使用哪一个来充分利用Closure Compiler?

它们并不是一回事。有时一个会导致Closure Compiler错误消息,而另一个则不会。有时一个可以用在一个有效的Closure Compiler" cast"对方无法做到。

(也许差异与DOM1与DOM2有关,但是什么?[为什么这很重要?]我是否应该总是在Javascript中使用一个或另一个只能在HTML5上运行?)


编辑:我正在寻找一个经验法则"这告诉我如何编写好的代码。 (这当然可以是"摘要"或者"实际上意味着某些规范。)

1 个答案:

答案 0 :(得分:0)

除非在代码使用中使用Element特定属性,否则请使用HTMLElement

HTMLElement specific properties

HTMLElement.accessKey
HTMLElement.accessKeyLabel (Read only)
HTMLElement.contentEditable
HTMLElement.contextMenu 
HTMLElement.dir
HTMLElement.draggable
HTMLElement.dropzone (Read only)
HTMLElement.hidden
HTMLElement.inert
HTMLElement.innerText
HTMLElement.isContentEditable (Read only)
HTMLElement.itemId 
HTMLElement.itemProp (Read only)
HTMLElement.itemRef (Read only)
HTMLElement.itemScope 
HTMLElement.itemType (Read only)
HTMLElement.itemValue 
HTMLElement.lang
HTMLElement.noModule
HTMLElement.offsetHeight (Read only)
HTMLElement.offsetLeft (Read only)
HTMLElement.offsetParent (Read only)
HTMLElement.offsetTop (Read only)
HTMLElement.offsetWidth (Read only)
HTMLElement.properties (Read only)
HTMLElement.spellcheck
HTMLElement.style
HTMLElement.title
HTMLElement.translate 

HTMLElement specific Events

HTMLElement.oncopy 
HTMLElement.oncut 
HTMLElement.onpaste 
TouchEventHandlers.ontouchstart 
TouchEventHandlers.ontouchend 
TouchEventHandlers.ontouchmove 
TouchEventHandlers.ontouchenter 
TouchEventHandlers.ontouchleave 
TouchEventHandlers.ontouchcancel 

HTMLElement specific methods

HTMLElement.attachInternals() 
HTMLElement.click()
HTMLElement.forceSpellCheck()