jQuery插件有多种方法

时间:2013-03-08 05:09:06

标签: javascript jquery jquery-plugins plugins

我将以一种很好的方式包装我的一些函数,为此我想采用jQuery方法。就像jQuery有很多方法一样

$.parseJson()
$.ajax()
$("div").text("hey my testing");

并且两个方法都存在于同一个jQuery文件中。但在阅读有关如何制作jquery插件的过程中,它指定您不需要在同一个插件中创建多个函数。而是将包含方法名称的参数传递为字符串。

那么,下面的代码片段是正确的还是我需要对其进行一些更正。

<script type="text/javascript">
    (function ($) {
        $.fn.testMethod1 = function () {
            return $(this).each(function () { });
        };
        $.fn.testMethod2 = function () {
            return $(this).each(function () { });
        };
        $.test = function () {
            return "testresult"
        };
    })(jQuery);

    $("div1").testMethod1();
    $("div2").testMethod2();
    $.test();

    //Is that needed to be replace in a different way like
    $("div1").myPlugin("testMethod1");
    $("div1").myPlugin("testMethod2");
    $("div1").myPlugin("test");


</script>

2 个答案:

答案 0 :(得分:1)

第二种方式是首选方式,因为它保留了jQuery对象中的命名空间。

阅读官方jQuery文档:Plugins/Authoring

答案 1 :(得分:1)

您是否尝试使用jquery boilerplate。开始研究jQuery插件开发是一个很好的观点。它提供了一个安全的(似乎是)创建插件的好解决方案。他们使用第二种方式来调用方法。