📜 Tümünü Göster 🔄 Otomatiğe Al var oynatici; var sozler=[ { "time": 0, "text": "Blue moon", "meaning": "Mavi ay" }, { "time": 14.611764108718873, "text": "You saw me standing alone", "meaning": "Yapayalnız halimi gördün" }, { "time": 20.14000584550476, "text": "Without a dream in my heart", "meaning": "Sevdiğimin hayalinden yoksun" }, { "time": 25.549171967575074, "text": "Without a love of my own", "meaning": "Sevdiğimin kendisinden yoksun" }, { "time": 32.87038082452392, "text": "Blue moon", "meaning": "Mavi ay" }, { "time": 36.656699181198114, "text": "You knew just what I was there for", "meaning": "Orada neden bulunduğumu biliyordun" }, { "time": 42.16115707247925, "text": "You heard me saying a prayer for", "meaning": "Duama kulak verdin" }, { "time": 47.528275889373774, "text": "Someone I really could care for", "meaning": "Yürekten seveceğim birini diliyordum" }, { "time": 55.27559410490417, "text": "Ooh, ooh-ooh", "meaning": "Ooh, ooh-ooh" }, { "time": 69.3, "text": "Without a love of my own", "meaning": "Sevdiğimden yoksun" }, { "time": 76.93110808392333, "text": "Blue moon", "meaning": "Mavi ay" }, { "time": 80.52119291798401, "text": "You saw me standing alone", "meaning": "Beni yine tek başıma dururken gördün" }, { "time": 85.88848391226196, "text": "Without a dream in my heart", "meaning": "Sevdiğimin hayalinden yoksun" }, { "time": 91.40429194850158, "text": "Without a love of my own", "meaning": "Sevdiğimin kendisinden yoksun" }, { "time": 99.17408517166137, "text": "Ooh, ooh-ooh", "meaning": "Ooh, ooh-ooh" }, { "time": 113.57119007247924, "text": "Without a love of my own", "meaning": "Sevdiğimden yoksun" }, { "time": 120.95363301144408, "text": "Blue moon", "meaning": "Mavi ay" }, { "time": 125.30911703051757, "text": "Ooh, ooh-ooh", "meaning": "Ooh, ooh-ooh" }, { "time": 135.2775340305176, "text": "Without a love of my own", "meaning": "Sevdiğimden yoksun" } ]; var mevcutSatir=-1; var lastMevcutSatir=-1; var sozlerGuncelleInterval; // Şarkı sözlerini oluşturma fonksiyonu sozlerOlustur(); // Tümünü göster ikonuna tıklama document.getElementById('show-all-icon').addEventListener('click', function(){ document.getElementById('sozler-kapsayici').style.height='auto'; document.getElementById('sozler-kapsayici').style.overflowY='visible'; this.style.display='none'; document.getElementById('scroll-icon').style.display='inline'; }); // Scroll moduna dön ikonuna tıklama document.getElementById('scroll-icon').addEventListener('click', function(){ document.getElementById('sozler-kapsayici').style.height='400px'; document.getElementById('sozler-kapsayici').style.overflowY='auto'; this.style.display='none'; document.getElementById('show-all-icon').style.display='inline'; }); function onYouTubeIframeAPIReady(){ oynatici=new YT.Player('oynatici', { height: '315', width: '560', videoId: 'MiY5auB3OWg', // Buraya YouTube video ID'sini girin playerVars: { autoplay: 0, controls: 1, mute: 0, disablekb: 0, rel: 0, showinfo: 0, modestbranding: 1 }, events: { 'onStateChange': oynaticiDurumDegisti } }); } function oynaticiDurumDegisti(event){ if(event.data==YT.PlayerState.PLAYING||event.data==YT.PlayerState.PAUSED||event.data==YT.PlayerState.BUFFERING){ if(!sozlerGuncelleInterval){ sozleriGuncelle(); sozlerGuncelleInterval=setInterval(sozleriGuncelle, 200); } }else{ clearInterval(sozlerGuncelleInterval); sozlerGuncelleInterval=null; } } function sozleriGuncelle(){ if(!oynatici||!oynatici.getCurrentTime) return; var currentTime=oynatici.getCurrentTime(); for (var i=0; i < sozler.length; i++){ if(currentTime >=sozler[i].time&&(!sozler[i + 1]||currentTime < sozler[i + 1].time)){ if(mevcutSatir!==i){ mevcutSatir=i; sozlerStilGuncelle(); } break; } } } function sozlerStilGuncelle(){ if(lastMevcutSatir >=0){ var lastLineEl=document.getElementById('soz-' + lastMevcutSatir); if(lastLineEl){ lastLineEl.classList.remove('current'); lastLineEl.classList.add('passed'); } } var currentLineEl=document.getElementById('soz-' + mevcutSatir); if(currentLineEl){ currentLineEl.classList.add('current'); currentLineEl.classList.remove('passed'); // Mevcut satırı ekranın ortasında göstermek için otomatik kaydırma var sozlerKapsayici=document.getElementById('sozler-kapsayici'); var containerHeight=sozlerKapsayici.clientHeight; var currentLineOffset=currentLineEl.offsetTop - sozlerKapsayici.offsetTop; var scrollPosition=currentLineOffset - (containerHeight / 2) + (currentLineEl.clientHeight / 2); // Yumuşak kaydırma için özel fonksiyon animateScroll(sozlerKapsayici, scrollPosition, 300); } lastMevcutSatir=mevcutSatir; } function animateScroll(element, to, duration){ var start=element.scrollTop; var change=to - start; var startTime=performance.now(); function animateScrollStep(currentTime){ var elapsedTime=currentTime - startTime; var progress=Math.min(elapsedTime / duration, 1); element.scrollTop=start + change * easeInOutQuad(progress); if(progress < 1){ requestAnimationFrame(animateScrollStep); } } requestAnimationFrame(animateScrollStep); } function easeInOutQuad(t){ return t < 0.5 ? 2*t*t:-1+(4-2*t)*t; } function sozlerOlustur(){ var sozlerKapsayici=document.getElementById('sozler-kapsayici'); sozlerKapsayici.innerHTML=''; for (var i=0; i < sozler.length; i++){ var lyricDiv=document.createElement('div'); lyricDiv.className='sozler-satir'; lyricDiv.id='soz-' + i; lyricDiv.setAttribute('data-time', sozler[i].time); var textDiv=document.createElement('div'); textDiv.textContent=sozler[i].text; var meaningDiv=document.createElement('div'); meaningDiv.className='sozler-anlam'; meaningDiv.textContent=sozler[i].meaning; lyricDiv.appendChild(textDiv); lyricDiv.appendChild(meaningDiv); lyricDiv.addEventListener('click', function(){ var time=parseFloat(this.getAttribute('data-time')); oynatici.seekTo(time, true); }); sozlerKapsayici.appendChild(lyricDiv); } }