2015-05-06 104 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

相關問題