2016-07-21 9 views
1

今日のベストプラクティスは、私がゲーラリーとして画像の数を設定する必要がありました。それは4か何かの行にそれらを表示することが可能にwasn'tので、私は、画像をスタックしていたこのサイトのモバイル版に 。jQuery |クリック時のクラスの追加/削除|

はまだ画像がそうI'veが100ピクセルの高さにそれらを縮小し、その全高さまで延びてそれらをクリックできることに決めたモバイルビューの(350px)非常に高かったです。

私は再び350pxに高さを設定します「拡張」と呼ばれるクラスを追加または削除することによって、これをしませんでした。

私はこの作品が、まだ、これはあなたがベストプラクティスを呼ぶだろうか、それが簡単に行うことができれば何であれば - 私がわからないために使用するJavaScript:私はこの質問をしisn'tを願っ

$('.galery__img--fragrance').on('click', function() { 
    if($(this).hasClass('extended')) { 
     $(this).removeClass('extended'); 
    } else { 
     $(this).parent().find('.extended').removeClass('extended'); 
     $(this).addClass('extended'); 
    } 
    }); 

冗長ですが、私はJS/jQueryの新機能です。それを正しくやりたいと思っています:-)

編集:もう一度クリックすると、画像が100pxの高さまで崩壊したまたは別の画像が

+1

使用する$(this).toggleClass( ".extended");クラスを追加/削除することもできます。 –

答えて

2

使用.toggleClass() FUNCをクリックした場合

$('.galery__img--fragrance').on('click', function() { 
    $(this).toggleClass('extended'); 
}); 
+0

Jayeshねえ、それはあまりにも私の最初の意図だったが、私は、彼らが再びクリックされた場合は、再度100ピクセルの高さに崩壊して他の画像を望んでいたか、別の画像がそう、このwouldn't作業 – Taucherglocke

+0

追加をクリックした場合、 '(」.galery__img - 香り').removeClass(' extended ') 'トグルの前に他のすべてのイメージからそれを削除するには? – Jorg

関連する問題