有哪些工具可用于记录jQuery插件?

时间:2009-10-28 18:35:08

标签: javascript jquery documentation jquery-plugins

我最近开始创建一些jQuery插件,我发现很难用我发现的文档生成工具来记录它们。我尝试过:JSDocJSDoc-toolkitJGrouse以及基于网络的工具。我最头疼的是我的插件被编码为一个大的匿名函数,我无法让工具识别我正在做什么,或者完全忽略它并让我输入方法的文档标签,物品等。

是否还有其他工具可以帮助记录jQuery插件?

谢谢, 桑德罗

4 个答案:

答案 0 :(得分:6)

你看过Natural Docs了吗?它可能没有对JavaScript的明确支持,但无论如何它都做得非常好。当然你可以欺骗它不去理解代码,但是如果你玩得很好,它可能是一个很糟糕的工具。

答案 1 :(得分:5)

Javascript文档工具仍然相对不成熟,所以没有50多个像JavaDoc那样,而那些存在的工具不能处理像jQuery插件这样的复杂情况(或者至少没有我见过的那些。)

但是,Javascript是一种非常灵活的语言,因此您可以以一种让您的文档工具满意的方式重写您的插件。

例如,而不是:

(function($) {
    $.yourMethod = function() {/* do something */}
})(jQuery);
你可以这样做:

function yourMethod = function() {
    /* do something */
}

(function($) {
    $.yourMethod = yourMethod;
})(jQuery);
delete yourMethod

或只是:

jQuery.yourMethod = function() {
    /* do something */
}

这两个选项并不完全相同;第一个将覆盖任何现有的yourMethod函数,而后者将没有标准插件格式的“隐私”。根据您为此插件编写的内容,这些问题可能对您有用,也可能无关紧要。

如果他们不这样做,重新设计代码样式可能是使JSDoc可解析的可行方法。如果不是......祝你找到足够成熟的JSDoc工具(或编写自己的工具): - )

答案 2 :(得分:3)

我以这种方式使用了doxygen:

/** @cond */

jQuery(function($){

    $.fn.TestFunction = function(){ testvar="test1";test("test2");alert(testvar); }

/** @endcond */

    /** DoSth Function */
    function test(testvar)
    {
       alert(testvar);
       var testvar="test3";
       alert(testvar);
    }

/** @cond */

    delete test;
});

/** @endcond */

答案 3 :(得分:0)