0

我有以下代码:

$(document).ready(function() {
    $.fn.addRemoveButton = function() {
        alert(1);
    };

    $.addRemoveButton();
});

我从 firebug 收到以下错误消息:

TypeError: $.addRemoveButton 不是函数 $.addRemoveButton();

为什么以及如何解决这个问题?

4

3 回答 3

2

您需要定义一个选择器,试试这个:

$(document).ready(function() {
    $.fn.addRemoveButton = function() {
        alert(1);
    };

    $(document).addRemoveButton();
});

这是工作的jsFiddle。

于 2013-05-02T11:04:46.377 回答
1

您需要将其应用于任何DOM.

例子

jQuery 代码

$(function()
{
    $.fn.addRemoveButton = function() {
        alert(1);
    };
    $('#letit').addRemoveButton();
});

HTML 代码

<div id="letit"></div>
于 2013-05-02T11:06:54.370 回答
0

或者,您可以将其创建为 jQuery 全局函数:

$(document).ready(function() {
    $.addRemoveButton = function() { // removed the .fn
        alert(1);
    };

    $.addRemoveButton();
});

这会将函数绑定到 jQuery 对象,然后您可以在其中像在原始示例中一样使用它。

请参阅这篇文章jQuery.fn.method了解和之间的区别jQuery.method

于 2013-05-02T23:03:19.410 回答