si giusto quello che dici ma ce una condizione se hai visto quindi trovato document.all saltavano il comando.
Comunque ho fatto queste modifiche:

Codice PHP:
<script type="text/ecmascript">
<!--
function song(mp3){
    if(mp3!=""){
        var elmp3=document.getElementById("lettore");
        var elart=document.getElementById("artista");
        var tag="<embed src=\"toni cell/" + mp3 + "\" width=\"280\" height=\"25\">";
        var artista=mp3.split(".");
        elmp3.innerHTML=tag;
        elart.innerHTML=artista[0];
    }
}
//-->
</script>
        
</head>

<body>
<?php 
$arrfile
= array();
$dir="toni cell";
$cartella=opendir($dir);
while(
$file=readdir($cartella)){
    if(
$file!="." && $file!=".."$arrfile[]=$file;
}
foreach(
$arrfile as $filetxt){
    print 
"<a href=\"javascript:song('$filetxt')\">$filetxt</a>
"
;
}
              
?>
<table width="280" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td><span id="lettore"></span></td>
  </tr>
  <tr>
    <td bgcolor="#000000"><marquee behavior="scroll" direction="left" onmouseover="this.stop()" onmouseout="this.start()" scrollamount="3" scrolldelay="5"><span id="artista" style="font-family:Tahoma, Geneva, sans-serif; color:#F00"></span></marquee></td>
  </tr>
</table>
e non so il perchè con firefox va benissimo mentre con IE mi da l'artista in id="artista" ma il breno non lo fa ascoltare ma me lo scarica mi scrica il file mp3