2015-05-06 73 views
0

我知道document.createElementdocument.registerElement但这些方法不允许写有我想要的东西,喜欢什么新形象自定义参数的构造函数()做img标签。我写了以下代码:如何编写构造函数的在JavaScript/CoffeeScript的DOM元素

SVG = document.getElementById('sprite').content.children[0] 
class DisplayObject 
    constructor: (childs)-> 
     clone = document.importNode SVG 
     clone.__proto__ = { 
      constructor: DisplayObject 
      __proto__: SVG.__proto__ 
     } 
     clone.constructor = DisplayObject 
     return clone 
    __proto__: SVG.__proto__ 
    test: -> 
     console.log 'test method' 

问题是我无法从返回的克隆对象访问测试方法。谢谢

回答

0

也许这是你在找什么:

SVG = document.getElementById('flybar').children[0] 

class DisplayObject 
    constructor: (children)-> 
     @__proto__ = SVG.__proto__ 
     return 
    test: => 
     console.log 'test method' 
+0

没有奏效。问题是当你想调用'document.body.appendChild(new DisplayObject())'时,它会抛出一个错误,说'在'Node'上执行'appendChild'失败:参数1的类型不是'Node'“ – raoof

相关问题