2012年12月24日月曜日

[jQuery plugin] .sort() 1.0 リリース

というわけでjQuery plugin の.sort() 1.0リリースします。

このプラグインは以下の機能をjQueryに付加します。

  • jQueryで取得した要素群を任意の順番に並び換える機能

ダウンロードはこちら

で、このプラグインですが、下記の関数群によって成り立っています。(実際の動作はhttp://jsdo.it/juner/jQuery_sort_1.0を参照のこと。)

jQuery.fn.sort();

何もせずthisを返す。

jQuery.fn.sort(String key);

指定したキーによる並び替えが登録されていればそのソートを行い、ソートされた要素群を返す。

もしもそのキーが登録されていない場合は何も変更せずにthisを返す。

初期状態で登録されているキーは下記の通りである

'reverse'
逆順に並び替える
'shuffle'
シャッフルする
'alternate'
端から順番に並び換える
'central'
中央から順番に並び換える
jQuery.fn.sort(Function key);

指定されたFunctionでソートした要素群を返す。

その際に指定するfunction は this にjQuery.fn.get()の返り値の配列が格納されている状態で動作することを念頭に作成すること。

jQuery.sort();

設定を行う為の幾つかの関数を返す。

.addFunction(String key,Function func);

keyにfuncを登録する

.addFunction(Object options);

optionsが連想配列であれば そのキーをキーとして、値を関数として登録する。

.delFunction(String key);

keyが登録されていれば削除する

.delFunction(Array keys);

keyのリストを元に設定されている物があれば削除する。

.setAutoGlobalMethod(boolean on_off);

自動登録フラグのON/OFFを設定する。※1

.addGlobal()

既に登録してあるキーを全てjQuery.fn.key に登録する(ただし、上書きはしない。)

.addGlobal(String key)

既に登録してあるkeyの関数をjQuery.fn.key に登録する

.addGlobal(Array keys)

既に登録してあるkeyの関数を配列を元に jQuery.fn.key に登録する

.delGlobal()

既にaddGlobalで登録してある関数のうちsort関連で登録された物だけを削除する

.delGlobal(String key)

既にaddGlobalで登録してある関数のうちkeyに指定されたものをjQuery.fn.keyより削除する。関係無い関数の場合削除しない。

.delGlobal(Array keys)

既にaddGlobalで登録してある関数のうちkeyの配列に指定されたものをjQuery.fn.keyより削除する。関係無い関数は削除しない。

jQuery.sort(options)

ソートの設定を行う。指定出来るキーとその値については下記の通りである。

options.autoGlobalMethod

自動設定フラグ(※1)

options.add

新たに設定するキーと関数の連想配列

options.del

削除するキーの配列

※1 自動設定フラグ

jQuery.fn.sort("keyname")で利用出来るソートをjQuery.fn.keyname()でも利用出来る様に出来る機能

標準でOFFになっている。

また、これがONになっていても、既にkynameが設定されている場合には設定されない。

サンプルについてはこちら