2010-11-18 10 views
0

私はjQueryウィジェットファクトリーを使ってルーレットウィジェットを作っています(http://stuff.manisto.dk/roulette/でそれを見てください)。人々が使いやすくするために、要素などのいくつかのデフォルトオプションを指定します。jQueryウィジェットオプション配列

デフォルトのオプション(http://stuff.manisto.dk/roulette/?elements=stack;overflowを参照)より小さい要素配列を指定すると、残りの要素は引き続き表示されます。

これを修正するにはどうすればよいですか?なぜ、jQueryは新しい配列が指定されていれば、それを供給するのではなく、すべての配列値をコピーしますか?

ところで、コードはhttp://bitbucket.org/manisto/jroulette/srcでご覧になれます。

+0

回答する前に実際のコードを見てください! :) – ManiSto

答えて

0

これは、jQueryのextendメソッドを使用すると、元の(オプション)を拡張する配列内の要素を単に上書きするためです。他の要素を取り除きたいのであれば、元の配列を拡張しないでください。あるいは、拡張配列にnullまたはundefinedの値を渡すという点でそれらを無効にしてください。

私はあなたのコードを見ていませんが、一般的に、jQueryのデフォルトオプションは、ユーザーが呼び出しごとに設定するものによって拡張されています。

+0

私は(少なくとも直接的に)オプションを拡張していません。これは、jQueryがウィジェットファクトリを介して私にしてくれるものです。しかし、提供されたオプションと、ウィジェットのデフォルトオプションを区別する方法はありますか? – ManiSto