2010-06-09 5 views
0
$('.tabs a ').click(function() { 
    var a = $(this).attr('href'); 
    if (a == '#tab-1') { 
     $('.btn-buy').hide(); 
     $('.btn-sell').show(); 
    } else { 
     $('.btn-sell').hide(); 
     $('.btn-buy').show(); 
    } 
    return false; 
}); 

... это работает, но код уродливый, слишком много строк. Может ли оно быть уменьшено дальше?Как я могу улучшить эту функцию click/toggle в jquery?

Заранее благодарим за вашу помощь!

+0

Пока это работает .... Я видел хуже;) –

+0

Код выглядит довольно понятным для меня. – Ether

ответ

1

Вы могли бы просто использовать переключатель:

$(".tabs a").click(function() { 
    $(".btn-buy").toggle(); 
    $(".btn-sell").toggle(); 
}); 

Это предположить, что они начинают в правильном состоянии на начальном этапе ...

+0

WoW! Отлично, спасибо. :) – 3zzy

+0

Но это не то же поведение. Если я правильно понял, он должен показывать только кнопку 'buy', если щелкнуть' # tab1'. Это всегда переключает состояние. Поэтому, если я дважды нажимаю на 'tab2' дважды или один раз на' tab2', а затем 'tab3', кнопка снова отображается. –

+0

Есть только две вкладки, так что это работает отлично. Но я просто заметил, что IE не показывает btn-sell, hmm ... – 3zzy