Newsgroup: it.comp.lang.javascript
Titolo: Eliminare form

Salve a tutti.
Ho trovato in rete un semplice script per inserire un jukebox nel sito,
selezionando i brani da un form.
Ora chiedo, come devo fare per eliminare il form (collegando comunque le
tracce audio allo script) dal momento che i brani da inserire sono
pochissimi e preferirei un piccolo elenco?
Grazie a chi vorrą aiutarmi.

Dimenticavo lo script:
<SCRIPT LANGUAGE="JavaScript">
function suona(brano)
{
var lista='<embed src="canzoni/' + brano + '" hidden=true loop=true
autostart=true volume=70>';
if(document.all)
{
document.all('musica').innerHTML=lista;
}
else if(document.getElementById){
document.getElementById("musica").innerHTML = lista
}
 else {
alert("il tuo browser non supporta questo metodo")
}
}
</script>
</head>
<body bgcolor="#f1f1a1"><span id="musica"></span><p align=center><table
border=0 width=242 height="326">
<tr>
&nbsp;
<tr><td width="232"><p align=center><b>SCEGLI<form name="mioForm"><select
name="elenco"
onChange="suona(window.document.mioForm.elenco.options[selectedIndex].value)
">
<option selected value="none">  Muto
<option value="1.mp3">  Rock
<option value="2.mp3">  Folk
<option value="3.mp3">  Jazz
</select>
</form>
"Stefania" <st...@NONSPAMtin.it> ha scritto nel messaggio
news:43455377$0$13347$4faf...@reader2.news.tin.it...


 ">
Potresti fare, come dici, un elenco e passare il nome del brano, del tipo
<ul><li onclick="suona('none')">Muto</li><li
onclick="suona('1.mp3')">Rock</li>....</ul>
(da testare che onclick su li funzioni con i browser che ti interessano, al
massimo metti un anchor per maggiore compatibilità, del tipo
<li><a href="#" onclick="suona('1.mp3');return false">Rock</a></li>
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 pochissimi e preferirei un piccolo elenco?
Partendo dal tuo script, ho fatto velocemente una cosa di questo tipo:
<script type="text/javascript">
function suona(brano){
 
	if (document.getElementById){
		var obj=document.getElementById("musica");
 
		if (obj)
			document.body.removeChild(obj);
 
		if (brano!=""){
			obj=document.createElement("embed");
			obj.setAttribute("hidden","true");
			obj.setAttribute("autostart","true");
			obj.setAttribute("volume","70");
			obj.setAttribute("src",brano);
 
obj.id
="musica";		
			document.body.appendChild(obj);
		}
		return false;
	}else if (brano!="") {
		alert("Il tuo browser non supporta gli standard DOM.\r\nPotrai ugualmente
scaricare la musica da te scelta, per ascoltarla sul tuo computer.");
		return true;
	}
 
}
</script>
<style type="text/css">
	ul#music-list{
		list-style:square;
	}
	ul#music-list a{
		font:bold 11px Verdana;
		color:black;
		text-decoration:none;		
	}
	ul#music-list a span{
		font:normal 10px Verdana;
		display:none;
		color:gray
	}
	ul#music-list a:hover{
		color:red;
	}
	ul#music-list a:hover span{
 
		display:inline;
	}
</style>
<ul id="music-list">
	<li><a href="javascript:void(0)" onclick="suona();return
false">Mute</a></li>
	<li><a href="canzoni/beyondthebounds.mp3" onclick="return
suona(this.href)">Beyond the bounds <span>click to play</span></a></li>
	<li><a href="canzoni/nge.mp3" onclick="return suona(this.href)">Neon
Genesis Evangelion <span>click to play</span></a></li>
</ul>
Così impostato, anche i browser che non supportano gli standard web o
javascript, hanno ugualmente la possibilità di ascoltare la musica in
quanto gli viene proposto il download, e abbiamo strizzato un'occhio anche
all'accessibilità.
Se preferisci, in caso di mancato supporto degli standard web, non avvenga
il download direttamente, basta che tu sostituisca all'interno della
funzione suona, il "return true" presente con "return false".
Ho eliminato il riferimento a document.all, dato che serve solo per IE4;
visto che già lo script di per sé non punta ad essere cross-browser (per
quanto ho già detto all'inzio), che il browser in questo è al quanto
vetusto, e che personalmente mi sta antipatico.
-- 
~ Confondi il mondo, sorridi tutti i lunedì!

Grazie per l'aiuto, siete stati davvero cortesi!