gykkSlide v1.2

Yapay zeka ile geliştirilen, ek kütühane gerektirmeyen (animasyonlar dahil edilmedi), özelleştirilebilir içerik kaydırıcı...

1. HTML Yapısı ve Kullanımı

Her slider için gerekli veriler data-* öznitelikleriyle yapılandırılır.

<div id="slide1" class="gykkSlide" 
	data-auto="true" 
	data-timer="4500" 
	data-nav="true" 
	data-dot="true" 
	data-lazy="true" 
	data-loop="true" 
	data-pause="true" 
	data-count="1" 
	data-gap="0" 
	data-speed="500" 
	data-ain="fadeIn" 
	data-aout="fadeOut" 
	data-aduration="4000" 
	data-caption="true" 
	data-cin="slideInDown" 
	data-cout="slideOutUp" 
	data-cduration="1000" 
	data-cdelay="1000">

... ITEMS ...

</div>

2. CSS Tarzı ve Düzen


.gykkSlide {position: relative;overflow: hidden}
.gykkSlide .dragging {cursor: grabbing;transition: none}
.gykkSlide .gykkSlide-container {display: flex}
.gykkSlide .gykkItem {position:relative;animation-delay:0s;animation-iteration-count:1;animation-fill-mode:forwards}
.gykkSlide .gykkItem:has(.onScreen), .gykkSlide .gykkItem .caption {animation-delay:0.5s;animation-fill-mode:both}
.gykkSlide .gykkItem .caption.hidden {display:none;visibility:hidden;opacity:0}
.gykkSlide .gykkItem.active {left: 0;opacity: 1}
.gykkSlide .gykkItem.previous {left: -100%}
.gykkSlide img {display: block;width: 100%;height: auto;}
.gykkSlide .gykkSlide-navs {}
.gykkSlide .nav-button {position: absolute;top: 50%;transform: translateY(-50%);background-color: rgba(0, 0, 0, 0.5);color: white;border: none;padding: 10px;cursor: pointer;z-index: 10}
.gykkSlide .nav-button.prev {left: 10px}
.gykkSlide .nav-button.next {right: 10px}
.gykkSlide .gykkSlide-dots {text-align: center;margin-top: 10px}
.gykkSlide .dot {display: inline-block;width: 10px;height: 10px;margin: 5px;background-color: gray;border-radius: 50%;cursor: pointer}
.gykkSlide .dot.active {background-color: black}

/* optional: for caption animations */ 
.caption {position:absolute;top:25px;background-color:#fff;padding:10px 25px}

3. Parametreler ve Özellikler

Parametre Açıklama Varsayılan Değer
data-auto Otomatik slayt geçişi yapılacak mı false
data-timer Otomatik geçiş süresi (ms) 3500
data-nav İleri/Geri butonları gösterilsin mi true
data-dot Dots navigasyonu gösterilsin mi true
data-lazy Resimleri lazy-load ile yükle false
data-loop Son slayttan sonra tekrar başa dönsün mü true
data-pause Hover sırasında otomatik geçişi durdur false
data-count Ekranda kaç slayt gösterilecek 1
data-gap Slaytlar arası boşluk 0px
data-speed Geçiş süresi (ms) 500
data-ain Giriş animasyon sınıfı ""
data-aout Çıkış animasyon sınıfı ""
data-aduration Giriş ve çıkış animasyon süresi (ms) 300
data-caption Slayt başlıkları (caption) gösterilsin mi true
data-cin Başlık giriş animasyonu ""
data-cout Başlık çıkış animasyonu ""
data-cduration Başlık animasyon süresi (ms) 1000
data-cdelay Başlık animasyon gecikme süresi (ms) 1000
data-minw Slaytların minimum genişlik değeri (px) 0

4. Kullanım Örnekleri

Örnek 1: Tek Slayt Gösterimi


  <div id="slide1" class="gykkSlide" data-count="1" data-auto="true" data-loop="true" data-nav="true" data-timer="4500" data-ain="fadeIn" data-aduration="2000">
	<div class="gykkItem">
		<img src="https://placehold.co/600x400?text=Slide+1">
		<span class="caption">Caption 1</span>
	</div>
	<div class="gykkItem">
		<img src="https://placehold.co/600x400/000000/FFF?text=Slide+2">
		<span class="caption">Caption 2</span>
	</div>
	<div class="gykkItem">
		<img src="https://placehold.co/600x400/000000/FFF?text=Slide+3">
		<span class="caption">Caption 3</span>
	</div>
	<div class="gykkItem">
		<img src="https://placehold.co/600x400/000000/FFF?text=Slide+4">
		<span class="caption">Caption 4</span>
	</div>
	<div class="gykkItem">
		<img src="https://placehold.co/600x400/000000/FFF?text=Slide+5">
		<span class="caption">Caption 5</span>
	</div>
</div>
Caption 1
Caption 2
Caption 3
Caption 4
Caption 5

Örnek 2: 3lü Slayt ve Dots Navigasyonu


<div id="slide2" class="gykkSlide" data-loop="true" data-nav="true" data-dot="true" data-lazy="true" data-auto="true" data-pause="true" data-timer="3500" data-speed="1500" data-count="3" data-gap="5%" data-minw="150" data-ain="zoomIn" data-aout="zoomOut" data-aduration="3000"  data-caption="true" data-cin="flipInX" data-cout="flipOutX" data-cduration="1000" data-cdelay="1000" >
    <div class="gykkItem"><img src="https://placehold.co/600x400?text=Slide+1" /><span class="caption">Caption 1</span></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/000000/FFF?text=Slide+2" /><span class="caption">Caption 2</span></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/5b1e1e/FFF?text=Slide+3" /><span class="caption">Caption 3</span></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/101267/FFF?text=Slide+4" /><span class="caption">Caption 4</span></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/FFFFFF/000?text=Slide+5" /><span class="caption">Caption 5</span></div>
	<div class="gykkItem"><img src="https://placehold.co/600x400?text=Slide+6"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/000000/FFF?text=Slide+7"></div>
</div>
Caption 1
Caption 2
Caption 3
Caption 4
Caption 5
Caption 6
Caption 7

Örnek 3: MARQUEE stili


<div id="marqueestyle" class="gykkSlide" data-auto="true" data-timer="1500" data-nav="false" data-dot="false" data-loop="true" data-pause="true" data-count="3" data-gap="0" data-speed="1500">
    <div class="gykkItem"><img src="https://placehold.co/600x400?text=Slide+1"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/000000/FFF?text=Slide+2"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/5b1e1e/FFF?text=Slide+3"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/101267/FFF?text=Slide+4"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/FFFFFF/000?text=Slide+5"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400?text=Slide+6"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/000000/FFF?text=Slide+7"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/5b1e1e/FFF?text=Slide+8"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/101267/FFF?text=Slide+9"></div>
    <div class="gykkItem"><img src="https://placehold.co/600x400/FFFFFF/000?text=Slide+10"></div>	
</div>
  

Responsive

data-minw="310"

"data-minw" slide öğelerinin alabileceği px cinsinden minimum genişiği belirler. Bu değer yazılırsa, data-count ile belirlediğiniz adete kadar olan slide öğesi bu genişliğin altına düşmeyecek şekilde eşit olarak dağıtılır.

calculateSizes()

"calculateSizes()" fonksiyonu ekran ebatına göre sığacak öğe sayısını dinamik olarak hesaplar ve yerleştirir.

İndirme

Normal : gykkSlide.js ~ 14KB - UnMinified