Bu yazımda Jquery ile yatay accordion uygulamasını ve nasıl yaptığımı açıklamaya çalışacağım. Daha önce dikey olarak kullandığımız accordion uygulamasını bu sefer yatay olarak yapacağız. Bu uygulamayı da birçok amaç için kullanabiliriz. (Manşet alanı, menü alanı gibi.) Bu uygulamayı hazırlarken Jquery içinde yer alan efekt fonksiyonlarından olan
show - hide ve
animate fonksiyonlarını kullandım ve iki farklı örnek hazırladım. Çünkü bu fonksiyonların görselliği arasında az da olsa fark var. Ayrıca bu uygulamada tasarım ve efektlerde kullandığımız değerler yani css ile belirlemiş olduğum özellikler önemli. Bu bakımdan böyle bir uygulamada css kodlarımızı da göz önüne almalıyız. Şimdi bu uygulamayı nasıl yapacağımıza bakalım.
Örnek vereceğim uygulamada
animate fonksiyonunu kullanacağım. Ancak hem
show - hide fonksiyonu ile hemde
animate fonksiyonu ile hazırlamış olduğum örnekleri hem indirebilir hem de görebilirsiniz.
Öncelikle bu uygulamanın da belli bir html yapısı var. Bu yapı aşağıdaki gibi olmalı.
<div id="accordion">
<span>A1</span>
<div>İçerik - 1</div>
<span>A2</span>
<div>İçerik - 2</div>
<span>A3</span>
<div>İçerik - 3</div>
<span>A4</span>
<div>İçerik - 4</div>
<span>A5</span>
<div>İçerik - 5</div>
</div>
Bu yapıya uygun olarak hazırladığımız jquery kodlarımız ise aşağıdaki gibi olmalı. (Jquery kodlarımızda belirttiğimiz css değerleri kendi örneğim için geçerli. Sizler yapacağınız örneklerde kendi değerlerinize göre değiştirmelisiniz.)
<script type="text/javascript">
var aktif = 1;
$(document).ready(function(){
var son = $("#accordion div").length;
aktif = (son - 1); //açılışta aktif olacak kutu.
$("#accordion div:eq("+aktif+")").css("width","0px").animate({width:"306px"}, 300);
$("#accordion span").click(function(){
var index = $("#accordion span").index(this);
if(index != aktif)
{
$("#accordion div:eq("+aktif+")").hide();
$("#accordion div:eq("+index+")").css("width","0px").animate({width:"306px"}, 300);
aktif = index;
}
});
});
</script>
Görüldüğü kodlarımız böyle. Jquery kodlarında belirttiğimiz değerler tamamen kendi örneğim için geçerli. Böyle bir örnek yapacaklar değerleri kendi örneklerine uygun biçimde değiştirmelidir. Örneğimin css kodlarını örnek sayfalarda bulabilirsiniz. Böylece güzel bir çalışmayı daha yapmayı ve kullanmayı görmüş olduk. Ayrıca kodlar ile oynayarak daha efektif daha görsel bir çalışma yapılabilir.
Animate fonksiyonu ile hazırladığım örneği
buradan ,
Show - Hide fonksiyonları ile hazırlamış olduğum örneği de
buradan görebilirsiniz.
Hazırlamış olduğum örneği (iki fonskiyon ile beraber)
buradan indirebilirsiniz.
İyi Çalışmalar!