우선 w3c에 정의된 canvas의 인터페이스.
http://dev.w3.org/html5/canvas-api/canvas-2d-api.html

interface CanvasElement : Element {
    attribute unsigned long width;
    attribute unsigned long height;

    Object getContext(in DOMString contextId);

    DOMString toDataURL(optional in DOMString type, in any... args);
};





다음은 2개의 브라우저에서 구현된 canvas. (IE는 canvas가 없음)
원래 있어야 할 인터페이스는 빨간색 굵은 글씨.
서로에게 없는 건 주황색(?)으로 표시.

   Chrome  FireFox 
 boolean draggable
isContentEditable
addEventListener
draggable
mozOpaque
spellcheck
 
 function addEventListener
appendChild
blur
cloneNode
compareDocumentPosition
contains
dispatchEvent
focus
getAttribute
getAttributeNS
getAttributeNode
getAttributeNodeNS
getBoundingClientRect
getClientRects
getContext
getElementsByClassName
getElementsByTagName
getElementsByTagNameNS
hasAttribute
hasAttributeNS
hasAttributes
hasChildNodes
insertAdjacentElement
insertAdjacentHTML
insertAdjacentText

insertBefore
isDefaultNamespace
isEqualNode
isSameNode
isSupported
lookupNamespaceURI
lookupPrefix
normalize
querySelector
querySelectorAll
removeAttribute
removeAttributeNS
removeAttributeNode
removeChild
removeEventListener
replaceChild
scrollByLines
scrollByPages
scrollIntoView
scrollIntoViewIfNeeded

setAttribute
setAttributeNS
setAttributeNode
setAttributeNodeNS
toDataURL
webkitMatchesSelector
appendChild
blur
cloneNode
compareDocumentPosition
dispatchEvent
focus
getAttribute
getAttributeNS
getAttributeNode
getAttributeNodeNS
getBoundingClientRect
getClientRects
getContext
getElementsByClassName
getElementsByTagName
getElementsByTagNameNS
getFeature
getUserData

hasAttribute
hasAttributeNS
hasAttributes
hasChildNodes
insertBefore
isDefaultNamespace
isEqualNode
isSameNode
isSupported
lookupNamespaceURI
lookupPrefix
mozMatchesSelector
normalize
querySelector
querySelectorAll
removeAttribute
removeAttributeNS
removeAttributeNode
removeChild
removeEventListener
replaceChild
setAttribute
setAttributeNS
setAttributeNode
setAttributeNodeNS
setUserData
toDataURL
 number ATTRIBUTE_NODE
CDATA_SECTION_NODE
COMMENT_NODE
DOCUMENT_FRAGMENT_NODE
DOCUMENT_NODE
DOCUMENT_POSITION_CONTAINED_BY
DOCUMENT_POSITION_CONTAINS
DOCUMENT_POSITION_DISCONNECTED
DOCUMENT_POSITION_FOLLOWING
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
DOCUMENT_POSITION_PRECEDING
DOCUMENT_TYPE_NODE
ELEMENT_NODE
ENTITY_NODE
ENTITY_REFERENCE_NODE
NOTATION_NODE
PROCESSING_INSTRUCTION_NODE
TEXT_NODE
childElementCount
clientHeight
clientLeft
clientTop
clientWidth
height
nodeType
offsetHeight
offsetLeft
offsetTop
offsetWidth
scrollHeight
scrollLeft
scrollTop
scrollWidth
tabIndex
width
 ATTRIBUTE_NODE
CDATA_SECTION_NODE
COMMENT_NODE
DOCUMENT_FRAGMENT_NODE
DOCUMENT_NODE
DOCUMENT_POSITION_CONTAINED_BY
DOCUMENT_POSITION_CONTAINS
DOCUMENT_POSITION_DISCONNECTED
DOCUMENT_POSITION_FOLLOWING
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
DOCUMENT_POSITION_PRECEDING
DOCUMENT_TYPE_NODE
ELEMENT_NODE
ENTITY_NODE
ENTITY_REFERENCE_NODE
NOTATION_NODE
PROCESSING_INSTRUCTION_NODE
TEXT_NODE
childElementCount
clientHeight
clientLeft
clientTop
clientWidth
height
nodeType
offsetHeight
offsetLeft
offsetTop
offsetWidth
scrollHeight
scrollLeft
scrollTop
scrollWidth
tabIndex
width
 object attributes
childNodes
children
firstChild
firstElementChild
lastChild
lastElementChild
nextElementSibling
nextSibling
nodeValue
offsetParent
ownerDocument
parentElement
parentNode
prefix
previousElementSibling
previousSibling
style
attributes
childNodes
children
classList
firstChild
firstElementChild
lastChild
lastElementChild
nextElementSibling
nextSibling
nodeValue
offsetParent
ownerDocument
parentNode
prefix
previousElementSibling
previousSibling
style
 string baseURI
className
contentEditable
dir
id
innerHTML
innerText
lang
localName
namespaceURI
nodeName
outerHTML
outerText

tagName
textContent
title
baseURI
className
contentEditable
dir
id
innerHTML
lang
localName
namespaceURI
nodeName
tagName
textContent
title



Posted by bloodguy
,