2011-02-05 154 views
0

我不知道爲什麼我得到這個問題。我在JavaScript中使用過的原型,它工作正常,但由於某種原因,它不能在這裏工作:對象沒有方法Javascript

的test.html:

<script type="text/javascript"> 
     $(document).ready(function(){ 
     UserOptions("test"); 
    }); 
</script> 

UserOptions.js:

function UserOptions(username){ 
    ... 
    var userOptions = document.createElement("div"); 
    userOptions.className = "userOptions"; 
    **this.createBtns(userOptions);** 
    userContainer.appendChild(userOptions); 


    contentCenter.appendChild(userContainer); 
    contentCenter.appendChild(br); 

    BuddyList(); 
    } 

    UserOptions.prototype = { 
     createBtns:function(parent){ 
      var self = this; 
      /* Add Buddy Button */ 
      var addBtnContainer = document.createElement("div"); 
      addBtnContinaer.className = "addBtnContainer"; 
    ...} 

我不斷收到錯誤對象沒有方法'createBtns'

+0

你還可以發佈你嘗試創建對象的行嗎? – 2011-02-05 03:58:05

+0

你何時何地得到這個錯誤? – Pointy 2011-02-05 03:59:45

回答

11

您忘記了new關鍵字。現在它試圖調用你的構造函數作爲一個常規函數,這將指向window或其他。

new UserOptions("Fred");