この場合、どのようにDRYを順守しますか(アコーディオンの数が多くなる可能性があります)。
$ ->
$("#accordion-1").accordion
autoHeight: false
navigation: true
$ ->
$("#accordion-2").accordion
autoHeight: false
navigation: true
この場合、どのようにDRYを順守しますか(アコーディオンの数が多くなる可能性があります)。
$ ->
$("#accordion-1").accordion
autoHeight: false
navigation: true
$ ->
$("#accordion-2").accordion
autoHeight: false
navigation: true
セレクターによって別の関数を生成する関数を作成できるようです:
create = (selector) ->
$ ->
$(selector).accordion
autoHeight: false
navigation: true
それから:
create "#accordion1"
create "#accordion2"
CoffeeScript はわかりませんが、jQuery を使用した JS では、$("#accordion-1,#accordion-2").accordion(...)
両方の要素に同時に影響を与えることができます。
または、HTML のアコーディオンにクラスを適用してから、 like と言うことができます$(".accordion").accordion(...)
。それが将来の悲しみを引き起こす可能性が最も低い方法だと私には思えます。アコーディオンが必要な場合は、適切なクラスを指定するだけです。HTML から削除すると、別のスクリプトを編集しなくても、操作する要素のリストから既に削除されています。
最も簡単/最短の解決策:
$ ->
$("#accordion-1, #accordion-2").accordion
autoHeight: no
navigation: yes