私は Aptana を使用して JS を作成し、最近 jQuery バンドルをインストールしました (主にコード補完のためだけでなく、私が知らない新しいクールなもののためにも)。
そのため、入力readyして押すCtrl + <Space>と 2 つのオプションが表示され、そのうちの 1 つdocument readyをdocument ready (safe)選択すると、自動的に$(document).ready(function(){})またはjQuery(document).ready(function($){})それぞれ配置されます。
しかし、それは無関係です。$(someElement).clコード補完機能を使用するとオプションclickが表示され、それを選択すると次のコードが表示されます。
$(someElement).click(function() {
${0:
\}});
(関連性があります。後で説明します)
同様に、プラグインを作成しようとしていて、入力pluginして押しCtrl + <Space>てオプションplugin (method)を選択すると、次のコードが得られました。
;(function($) {
}
$.fn.pluginName = function(options) {
var opts = $.extend({}, $.fn.pluginName.defaults, options);
return this.each(function() {
var $this = $(this);
${6:
var o = $.meta ? $.extend({\}, opts, $this.data()) : opts;
}
});
// private function for debugging
function debug($obj) {
if (window.console && window.console.log) {
window.console.log($obj);
}
}
};
// default options
$.fn.pluginName.defaults = {
defaultOne:true,
defaultTwo:false,
defaultThree:'yay!'
};
})(jQuery);
まず、私が知る限り、一般的なプラグインの書き方は次のようになります。
(function($) {
$.fn.plugin = function(args) {
//...
}
})(jQuery);
defaultsそして、プラグインとして、$.fn.plugin.defaults = {...}またはプラグイン内で定義しvar defaults = {...}、プラグイン内で a{}をdefaultsandで拡張できますargs。私がよく知っているのはこれだけです。
そう:
;Aptana jQuery バンドルが最初にを入れるのはなぜですか?function($){}beforeを閉じるのはなぜ$.fn.pluginNameですか?- そして何よりも、これ
${0:は$.click()例と例で${6:は何plugin (method)ですか? $.metaまた、とは実際には何$this.data()ですか?
それはすべて非常に紛らわしいです(しかし、奇妙にエキサイティングです)...