对象没有方法Javascript

时间:2011-02-05 03:55:39

标签: javascript prototype

我不知道为什么我会遇到这个问题。我之前在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'

1 个答案:

答案 0 :(得分:11)

您忘记了new关键字。现在它试图将你的构造函数称为常规函数,这将指向window或其他任何东西。

new UserOptions("Fred");