📜 Tümünü Göster 🔄 Otomatiğe Al var oynatici; var sozler=[ { "time": 0, "text": "Ever wonder 'bout what he's doin'?", "meaning": "Onun ne yaptığını hiç merak ediyor musun?" }, { "time": 28.511353963760378, "text": "How it all turned to lies?", "meaning": "Nasıl da her şey koca bir yalana dönüştü?" }, { "time": 33.43618798474121, "text": "Sometimes I think that it's better", "meaning": "Bazen düşünüyorum da, belki de daha iyisi" }, { "time": 37.3, "text": "To never ask why", "meaning": "Hiç neden diye sormamaktır" }, { "time": 50.3, "text": "Where there is desire, there is gonna be a flame", "meaning": "Tutkunun olduğu yerde, tutuşma da olacaktır" }, { "time": 55.16554391607666, "text": "Where there is a flame, someone's bound to get burned", "meaning": "Tutuşmanın olduğu yerde de, biri mutlaka yanacaktır" }, { "time": 59.4, "text": "But just because it burns doesn't mean you're gonna die", "meaning": "Ama sırf yanıyorsun diye ölecek değilsin" }, { "time": 64.18665489509583, "text": "You've gotta get up and try, try, try", "meaning": "Kalkıp denemeli, denemeli, denemelisin" }, { "time": 69.01471600572204, "text": "Gotta get up and try, try, try", "meaning": "Kalkıp denemeli, denemeli, denemeli" }, { "time": 86.1, "text": "Funny how the heart can be deceiving", "meaning": "Kalbin insanı kandırabilmesi nasıl da garip" }, { "time": 90.74690106866454, "text": "More than just a couple times", "meaning": "Öyle bir-iki kez de değil" }, { "time": 95.8176160629425, "text": "Why do we fall in love so easy", "meaning": "Neden bu kadar kolay aşık oluyoruz" }, { "time": 99.9585869294281, "text": "Even when it's not right?", "meaning": "Doğru olmadığını bilsek bile?" }, { "time": 112.73387317166137, "text": "Where there is desire, there is gonna be a flame", "meaning": "Tutkunun olduğu yerde, tutuşma da olacaktır" }, { "time": 117.43831610490417, "text": "Where there is a flame, someone's bound to get burned", "meaning": "Tutuşmanın olduğu yerde de, biri mutlaka yanacaktır" }, { "time": 121.82895910490417, "text": "But just because it burns doesn't mean you're gonna die", "meaning": "Ama sırf yanıyorsun diye ölecek değilsin" }, { "time": 126.42949190463257, "text": "You've gotta get up and try, try, try", "meaning": "Kalkıp denemeli, denemeli, denemelisin" }, { "time": 131.4, "text": "Gotta get up and try, try, try", "meaning": "Kalkıp denemeli, denemeli, denemeli" }, { "time": 148.63007598855592, "text": "Ever worry that it might be ruined", "meaning": "Hiç her şeyin mahvolabileceğinden korktun mu" }, { "time": 153.07064213732912, "text": "And does it make you wanna cry?", "meaning": "Ve bu içini acıtıp seni ağlatmak istiyor mu?" }, { "time": 157.83727905531313, "text": "When you're out there doing what you're doing", "meaning": "Bir şekilde hayatını idame ettirmeye çalışıyorken" }, { "time": 161.334415, "text": "Are you just getting by?", "meaning": "Sürüklenip gidiyor musun?" }, { "time": 166.46439699618531, "text": "Tell me, are you just getting by, by, by?", "meaning": "Söylesene, öylece sürüklenip gidiyor, gidiyor, gidiyor musun?" }, { "time": 170.2, "text": "Where there is desire, there is gonna be a flame", "meaning": "Tutkunun olduğu yerde, tutuşma da olacaktır" }, { "time": 175.16656120027162, "text": "Where there is a flame, someone's bound to get burned", "meaning": "Tutuşmanın olduğu yerde de, biri mutlaka yanacaktır" }, { "time": 179.3, "text": "But just because it burns doesn't mean you're gonna die", "meaning": "Ama sırf yanıyorsun diye ölecek değilsin" }, { "time": 184.17428810490418, "text": "You've gotta get up and try, try, try", "meaning": "Kalkıp denemeli, denemeli, denemelisin" }, { "time": 188.95441703242494, "text": "Gotta get up and try, try, try", "meaning": "Kalkıp denemeli, denemeli, denemeli" } ]; 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: 'yTCDVfMz15M', // 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); } }