Originariamente inviato da pierofix
Chiusi, vorrai dire...
Ehh io li vedo aperti, sia su IE che su FF
Questa è la pagina che ho usato:
codice:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Documento senza titolo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
.menu_nascosto
{
position:absolute; top:-100px;
width:1px; height:1px;
overflow:hidden;
}
.menu_titolo
{
color:blue;
text-decoration:underline;
cursor:pointer;
}
</style>
<script type="text/javascript">
window.onload = function()
{
// Prepariamo tutti gli attori dello script
var menu = document.getElementById('menu')
var menu_elementi = menu.childNodes
var sotto_menu = new Array()
for (var i = 0; i < menu_elementi.length; i++)
{
if ( menu_elementi.item(i).nodeType == 1 )
{
sotto_menu.push(menu_elementi.item(i))
}
}
var sotto_menu_titoli = new Array()
for (var i = 0; i < sotto_menu.length; i++)
{
var titolo_corrente = sotto_menu[i].getElementsByTagName('span').item(0)
sotto_menu_titoli.push(titolo_corrente)
}
var sotto_menu_voci = new Array()
for (var i = 0; i < sotto_menu.length; i++)
{
var voci_corrente = sotto_menu[i].getElementsByTagName('ul').item(0)
sotto_menu_voci.push(voci_corrente)
}
// Prepariamo le funzioni 'visualizza' e 'nascondi'
function nascondi_menu(indice, menu_corrente)
{
sotto_menu_voci[indice].className = 'menu_nascosto'
menu_corrente.onclick = function()
{
visualizza_menu(indice, menu_corrente)
}
}
function visualizza_menu(indice, menu_corrente)
{
sotto_menu_voci[indice].className = ' '
menu_corrente.onclick = function()
{
nascondi_menu(indice, menu_corrente)
}
}
// Attribuiamo le funzioni ad ogni sotto-menu
function attribuisci_visualizza(elemento,idx)
{
elemento.onclick = function()
{
visualizza_menu(idx, elemento)
return false
}
}
for (var i = 0; i < sotto_menu_titoli.length; i++)
{
var elemento = sotto_menu_titoli[i];
attribuisci_visualizza(elemento, i);
}
// Rendiamo visivamente simili a link i titoli cliccabili dei sotto-menu
for (var i = 0; i < sotto_menu_titoli.length; i++)
{
sotto_menu_titoli[i].className = 'menu_titolo'
}
// Inizializziamo la pagina nascondendo tutti i sotto-menu
for (var Ai = 0; i < sotto_menu_voci.length; i++)
{
sotto_menu_voci[i].className = 'menu_nascosto'
}
var elemento_aperto = document.getElementById('menu1')
elemento_aperto.className = 'menu1';
}
</script>
</head>
<body>
<ul id="menu">[*]
<span>Verdura</span>
<ul id="menu1">[*]Pomodori[*]Carote[/list]
[*]
<span>Frutta</span>
<ul id="menu2">[*]Mele[*]Pere[/list]
[/list]
</body>
</html>