0

考えられるすべてのシナリオをコーディングする必要がないように、このコードをより適切に凝縮する方法があるかどうか疑問に思いました。どんな助けでも大歓迎です。

  $('select.contactselect').change(function(){
   var selectVal = $(this).val();
   if(selectVal == 'press'){
    $('.support').slideUp('fast');
    $('.general').slideUp('fast');
    $('.press').delay(100).slideDown('fast', function() {
        // Animation complete.
    });
  }else if (selectVal == 'general'){
    $('.press').slideUp('fast');
    $('.support').slideUp('fast');
    $('.general').delay(100).slideDown('fast', function() {
      // Animation complete.
    });
  }else if (selectVal == 'support'){
    $('.press').slideUp('fast');
    $('.general').slideUp('fast');
    $('.support').delay(100).slideDown('fast', function() {
      // Animation complete.
    });
  }
  });
4

1 に答える 1

2

クラス (press、general、support) を持つこれら 3 つの要素すべてにクラス「all_lists」を追加し、以下を使用します。

$('select.contactselect').change(function(){
  var selectVal = $(this).val();

  $('.all_lists').slideUp('fast');
  $('.' + selectVal).delay(100).slideDown('fast', function() {
// Animation complete.
});

});
于 2012-10-15T16:44:49.053 に答える