📜 Tümünü Göster 🔄 Otomatiğe Al var oynatici; var sozler=[ { "time": 0, "text": "Yesterday", "meaning": "Dün" }, { "time": 8.338616066757202, "text": "All my troubles seemed so far away", "meaning": "Tüm ızdıraplarım diner gibiydi" }, { "time": 13.218375062942506, "text": "Now it looks as though they’re here to stay", "meaning": "Şimdiyse çekmem için harlanıyor " }, { "time": 17.178796019073488, "text": "Oh, I believe in yesterday", "meaning": "Ah, düne olan inancım tam" }, { "time": 22.506967906539916, "text": "Suddenly", "meaning": "Nolduysa artık" }, { "time": 25.498422963760376, "text": "I’m not half the man I used to be", "meaning": "Eskiden olduğum kişi gibi değilim " }, { "time": 30.497194011444094, "text": "There’s a shadow hanging over me", "meaning": "Üzerimde bir gölge dolanıyor" }, { "time": 34.50664495040893, "text": "Oh, yesterday came suddenly", "meaning": "Ah, dün bir anda çıkageldi" }, { "time": 39.72973692370605, "text": "Why she had to go", "meaning": "Neden gitmesi gerekti?" }, { "time": 43.93071489891052, "text": "I don’t know. She wouldn’t say", "meaning": "Bilmiyorum. Söylemedi." }, { "time": 49.474073958038325, "text": "I said something wrong", "meaning": "Yanlış bir şey söyledim" }, { "time": 53.93739583024597, "text": "Now I long for yesterday", "meaning": "Şimdi düne hasretim" }, { "time": 59.5143679961853, "text": "Yesterday", "meaning": "Dün" }, { "time": 62.57845804768371, "text": "Love was such an easy game to play", "meaning": "Aşk, oynaması çok kolay bir oyundu" }, { "time": 67.65156586267089, "text": "Now I need a place to hide away", "meaning": "Şimdiyse sığınacak bir yer arıyorum" }, { "time": 71.5544740629425, "text": "Oh, I believe in yesterday", "meaning": "Ah, düne olan inancım tam" }, { "time": 77.10660307247925, "text": "Why she had to go", "meaning": "Neden gitmesi gerekti?" }, { "time": 81.49880794850158, "text": "I don’t know. She wouldn’t say", "meaning": "Bilmiyorum. Söylemedi." }, { "time": 87.09071913542175, "text": "I said something wrong", "meaning": "Yanlış bir şey söyledim." }, { "time": 91.40293105722046, "text": "Now I long for yesterday", "meaning": "Şimdi düne hasretim" }, { "time": 96.9628929408722, "text": "Yesterday", "meaning": "Dün" }, { "time": 100.20290702861023, "text": "Love was such an easy game to play", "meaning": "Aşk, oynaması çok kolay bir oyundu" }, { "time": 105.45945818882751, "text": "Now I need a place to hide away", "meaning": "Şimdi saklanacak bir yere ihtiyacım var" }, { "time": 109.3, "text": "Oh, I believe in yesterday", "meaning": "Ah, düne olan inancım tam" } ]; 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: 'NrgmdOz227I', // 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); } }