📜 Tümünü Göster 🔄 Otomatiğe Al var oynatici; var sozler=[ { "time": 0, "text": "Somebody swore me you were leaving town", "meaning": "Birisi söyledi, gidiyormuşsun bu şehirden" }, { "time": 37, "text": "I swear I never thought you'd be the one who'd let me down", "meaning": "Yemin ederim, beni yüzüstü bırakacak kişi sen olursun sanmazdım" }, { "time": 44.74054982070923, "text": "Fold this part, unfold this part", "meaning": "Tam kapandı derken, yara yeniden açılıyor" }, { "time": 59.45821099427795, "text": "Sticking to the walls, sticking to this one way street", "meaning": "Tutunacak yer ararken, tek yönlü bir yolda sıkışmışım" }, { "time": 67.01747001335144, "text": "You could never run, but you said you'd run with me", "meaning": "Koşamazdın belki ama benimle kaçacağını söylemiştin" }, { "time": 74.5463149885559, "text": "Hold this heart, hold this heart", "meaning": "Bırakma kalbimi, ne olur bırakma" }, { "time": 90.81022798283387, "text": "And I will not fall hard this time", "meaning": "Ki paramparça olmayayım bu sefer" }, { "time": 103.4, "text": "Cause' we are not afraid of who we are", "meaning": "Çünkü kim olduğumuzdan korkmuyoruz" }, { "time": 107.4912560629425, "text": "But of what we have become", "meaning": "Neye dönüştüğümüzden korkuyoruz" }, { "time": 111, "text": "And we are not afraid of what's to be", "meaning": "Olacaklardan da korkumuz yok" }, { "time": 114.85621807629394, "text": "When this road has just begun", "meaning": "Yolun daha henüz başındayken" }, { "time": 118.46407012016296, "text": "So we will turn our backs", "meaning": "O halde arkamıza dönüp" }, { "time": 120.67676707438659, "text": "And close the doors for the last time", "meaning": "O kapıları son bir kez kapatacağız" }, { "time": 126.60962111444091, "text": "Give me back what's mine", "meaning": "Kaybolan yıllarımı ver" }, { "time": 170.2, "text": "So we will turn our backs", "meaning": "O halde arkamıza dönüp" }, { "time": 172.68678187983704, "text": "And close the doors for the last time", "meaning": "O kapıları son bir kez kapatacağız" }, { "time": 178.6865299446869, "text": "Give me back what's mine", "meaning": "Kaybolan yıllarımı ver" } ]; 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: 'ZMtNyG5OPqM', // 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); } }