jarodeman: was machen diese Funktionen

Beitrag lesen

kann jemand diese Funktionen kurz kommentieren, bzw. beschreiben was wo passiert... hier der Code...

<script language="JavaScript">
<![CDATA[     var note=4;
    var word=3;
    var notetype;
    var verses=1;
    var verse=1;
    var svgdoc;

function init(event)
    {
      svgdoc = event.getCurrentNode().getOwnerDocument();
      verses = svgdoc.getElementById("song").getAttribute("verses");
      svgdoc.getElementById("verse"+verse).setAttribute("style","visibility:visible");
      PlayNextNote(evt);
    }

function PlayNextNote(event)
    {
      var node;
      var nodes;
      var textnodes;
      var sound;
      try
      {
        nodes = svgdoc.getElementsByTagName("use");
        textnodes = svgdoc.getElementsByTagName("text");

// Skip the first 4 "use" elements - they are TrebleClef elements not notes
        // Skip the first 3 "text" elements - they are beat info
        if(note > 4)
        {
          nodes.item(note-1).setAttribute("class",notetype);
          // There is only 1 text node to skip
          textnodes.item(word).setAttribute("class","words");
        }

if(note >= nodes.length && verse < verses)
        {
          note=4;
          svgdoc.getElementById("verse"+verse).setAttribute("style","visibility:hidden");
          verse++;
          svgdoc.getElementById("verse"+verse).setAttribute("style","visibility:visible");
        }

if(note < nodes.length)
        {
          notetype= nodes.item(note).getAttribute("class");
          nodes.item(note).setAttribute("class","highlightednote");
          // There is only 1 text node to skip
          textnodes.item(word+1).setAttribute("class","highlightedwords");
          sound = nodes.item(note).getAttribute("note");
        }
        else
        {
          svgdoc.getElementById("verse"+verse).setAttribute("style","visibility:hidden");
          verse=1;
          svgdoc.getElementById("verse"+verse).setAttribute("style","visibility:visible");
          return;
        }

node = svgdoc.getElementById("music");
        node.setAttribute("dur",nodes.item(note).getAttribute("dur"));

node.setAttribute("volume","10");
        var mp3=svgdoc.getElementById(sound+".mp3").getAttribute("data");
        node.setAttribute("xlink:href", mp3);
        node.beginElementAt("0s");

note++;
        word++;

}
      catch(e)
      {
        alert("Error: "+e.description);
      };
    }

]]>

</script>