document.addEventListener("DOMContentLoaded", initShuffle);
function initShuffle(){
document.querySelectorAll("#top .menu-title-text").forEach(el=>{
if(el.dataset.ready) return;
el.dataset.ready="1";
const original=el.textContent;
const letters=original.split("");
el.innerHTML="";
letters.forEach(letter=>{
const span=document.createElement("span");
span.className="shuffle-letter";
span.dataset.real=letter;
span.textContent=letter;
if(letter===" "){
span.style.width=".35em";
}else{
span.style.width=".62em";
}
span.style.display="inline-block";
span.style.textAlign="center";
el.appendChild(span);
});
const spans=[...el.querySelectorAll(".shuffle-letter")];
el.parentElement.addEventListener("mouseenter",()=>{
if(el.dataset.animating==="1") return;
el.dataset.animating="1";
animate(spans,()=>{
el.dataset.animating="0";
});
});
});
}
function animate(spans,done){
const original=spans.map(s=>s.dataset.real);
let progress=0;
const timer=setInterval(()=>{
// Buchstaben des Originalwortes mischen
let pool=[...original];
for(let i=pool.length-1;i>0;i--){
let j=Math.floor(Math.random()*(i+1));
[pool[i],pool[j]]=[pool[j],pool[i]];
}
spans.forEach((span,i)=>{
if(i