我很想把我的jQuery代码构造成插件吗?

kei*_*ant 5 jquery plugins

自从我学会了如何在jQuery中编写自己的插件之后,我发现每当我构建一个具有任何复杂性的页面时,我都很想以这种方式处理我的javascript.当我们谈论10行代码时显然很愚蠢,但是当我要构建一个包含几百行javascript(或更多)的页面时,它似乎是最简单的方法:

  • 将数据(甚至只是选项)从我的PHP脚本传递到javascript - $("#myform").myPagePlugin({options}, {data});
  • 给我一个DOM中的"主"对象来附加我的数据,而不是像全局变量那样的hacky
  • 让我的代码以后可以重复使用
  • 以熟悉的方式"插入"我的javascript到页面

如果我开始这样做,我会把自己挖进洞里吗?有什么我想念的吗?

Mac*_*bey 5

我唯一的批评是你正在创建一个jQuery插件,似乎你从来没有真正计划再次使用.这增加了运行jQuery运行的JavaScript的开销,以便在该开销不值得时初始化插件,因为该模块将永远不会再次使用.

而不是jQuery插件,为什么不创建一个名为namespace的JavaScipt对象?例如:

var mypage = {};
mypage.controller = function(){

} //your preferred JavaScript object notation here.
Run Code Online (Sandbox Code Playgroud)

或者这个命名空间的方法是你所谓的"hacky"?如果是这样,我会恭敬地不同意.