0

我有两个 JavaScript 文件,它们在名称空间中有一些功能。但是当我尝试从我的主页调用这个函数时,它会抛出一个错误,告诉“对象#没有方法'LoadAllBooks'”......但是我已经使用 namespace.function 调用了该函数。

这是 JavaScript 文件 Util.js 中的代码

var myNameSpace = {
    Book: function (author, title, URL) {
        this.author = author;
        this.title = title;
        this.URL = URL;
    },
    LoadAllBooks: function (metadata, attachPoint) {
        Some Code--
    },
    arr: [],
    oneBook: {}
};

现在从我的html主页调用上面的函数LoadAllBooks,如下所示。

<script>
    var attachpoint = document.querySelector('.buttonAttachPoint');
    $(document).on('load',myNameSpace.LoadAllBooks("ajax/metadata.json",this.attachpoint));
</script>

有人可以告诉我为什么这会出错吗?

4

1 回答 1

0

里面的代码在语法上Util.js看起来很好。但是,调用代码存在各种问题。

假设你使用的是 jQuery,你应该有类似的东西:

//Specify some code to be ran when the document is ready using the $ function
//This could have been done like this also $(document).ready(function () {});
$(function () {
    //Notice that the following line is inide the document ready handler.
    //Always make sure that the code that manipulates DOM nodes is executed only
    //when the document is ready.
    var attachPoint = document.querySelector('.buttonAttachPoint');

    myNameSpace.LoadAllBooks('ajax/metadata.json', attachPoint);
});

于 2013-03-28T02:45:07.590 回答