0

フィルタリング可能なプロジェクトでサイトを構築しています。私は基本的に、フィルタリングされたクラス内の要素の不透明度を変更したいと考えています。したがって、「アクティブ」クラスを持つ 100% の不透明要素と、「アクティブ」クラスを持たないその他すべての要素の不透明度 50% です。クリックすると、各要素がフェードアップまたはフェードダウンします。これがコードです。こいつで首をかしげる…

$(document).ready(function() {
  $('#filters li a').click(function() {
    // fetch the class of the clicked item
    var ourClass = $(this).attr('class');

    // reset the active class on all the buttons
    $('#filters li').removeClass('active');
    // update the active state on our clicked button
    $(this).parent().addClass('active');

    if(ourClass == 'all') {
      // show all our items
      $('#projects').children('li.two').show();
    }
    else {
      // 50% Opacity of all elements that don't share ourClass
      $('#projects').children('li:not(.' + ourClass + ')').fadeTo('slow', 0.5, function();
      // !00% Opacity of all elements that do share ourClass
      $('#projects').children('li.' + ourClass).fadeTo('slow', 1, function();
    }
    return false;
  });
});
4

1 に答える 1

1
 $('#filters li a').click(function() {
// fetch the class of the clicked item
var ourClass = $(this).attr('class');

// reset the active class on all the buttons
$('#filters li').removeClass('active');
// update the active state on our clicked button
$(this).parent().addClass('active');

if(ourClass == 'all') {
  // show all our items
  $('#projects').children('li.two').animate({opacity:1}, 400);
}
else {
  // hide all elements that don't share ourClass
  $('#projects').children('li:not(.' + ourClass + ')').animate({opacity:0.15}, 400);
  // show all elements that do share ourClass
  $('#projects').children('li.' + ourClass).animate({opacity:1}, 400);
}
return false;
});`
于 2013-03-18T00:49:08.627 に答える