DOM要素を操作するための単純なフレームワークを構築しています。フレームワークには約40の大きな関数があります。
フレームワーク関数は:
var $ = function(a) { /* content */ };
そしてそれは機能です:
Dev.FN = {
/* big functions here */
};
フレームワークに関数を含める方法は次のとおりです。
if($.FN) {
$.FN.em = em;
return $.FN;
}
$.FN = { em : em };
for(var b in Dev.FN) {
if(Dev.FN.hasOwnProperty(b)) {
$.FN[b] = Dev.FN[b];
}
}
return $.FN;
問題:フレームワークの呼び出しごとに40個の大きな関数が作成されます。つまり、呼び出す$(element1)
と40個の関数が作成され、さらに$(element2)
40個の大きな関数が作成されます。
呼び出しDev.FN
ごとに関数を作成せずに、から関数にリンクするにはどうすればよいですか?$(element)
PS:私も次のことを試しましたが、それが役立つかどうかはわかりません:
for(var b in Dev.FN) {
if(Dev.FN.hasOwnProperty(b)) {
$.FN[b] = function() {
return Dev.FN[b].apply(this, arguments);
};
}
}