- Home
- Categorie
- Coding e Sistemistica
- Coding
- problema con funzione nascondere div
- 
							
							
							
							
							
problema con funzione nascondere divCiao a tutti, chiedo scusa che chiedo qualcosa di già risolto, uso questa funzione per visualizzare o nascondere un div [script] 
 /**
 * Funzione per visualizzare/nascondere determinati elementi
 * @param {elementId} : id dell'elemento da visualizzare/nascondere
 */
 function fToggle(elementId) {
 // Recupero l'elemento dall'Id
 var e = document.getElementById(elementId);// Se e' visibile lo nascondo if ( !e.style.display || e.style.display != "none" ) { e.style.display = "none"; } else { // Altrimenti lo visualizzo e.style.display = "block"; }} 
 [/script]
 Questa funzione controlla id passato se e none apre seno chiude, io vorrei che se; esempio. Ho il div con id 1 apreto e apro anche il div id 2 mi chiuda il div id 1, come devo fare visto che id che passo io lo prendo dinamicamente da un codice php e quindi non lo conoscoQuesto e il codice che invia id alla funziona. Grazie a tutti [php] 
 <div><a onclick="javascript:fToggle('$row_sql[id]');"><strong>Curriculum</strong></a></div><br />\n
 <div id="$row_sql[id]" style="display:none;">$row_sql[cv]</div>
 [/php]
 
- 
							
							
							
							
							Ciao spirit19, 
 non è necessario modificare lo script che richiami sul link.E' sufficente conservare l'ultimo div id che viene aperto: 
 [php]
 var lastOpened = null;function fToggle(elementId) { if(lastOpened != null) 
 document.getElementById(lastOpened).style.display = 'none';var e = document.getElementById(elementId); // Se e' visibile lo nascondo if ( !e.style.display || e.style.display != "none" ) { e.style.display = "none"; } else { // Altrimenti lo visualizzo e.style.display = "block";lastOpened = elementId; 
 }
 }
 [/php]Provalo e fammi sapere.
 Ciao
 
- 
							
							
							
							
							
Ciao grazie dell' aiuto, funzionare funziona se apro il div con id 1 e poi apro il div id 2 si chiude il div id 1 "come volevo io" pero se apro il div id 1 e poi lo voglio chiudere non lo chiude per lo meno in un microsecondo lo chiede e lo apre c'è un modo per chiudere e poi riaprire il div id 1? Graziee 
 
- 
							
							
							
							
							Ciao spirit19, 
 nella fretta di risponderti mi ero perso una condizione.
 Sostituiscila con questa:
 [php]
 if(lastOpened != null && elementId != lastOpened)
 document.getElementById(lastOpened).style.display = 'none';[/php]Ciao 
 
- 
							
							
							
							
							
Gracias  