11548 sujets

JavaScript, DOM et API Web HTML5

Bonsoir à tous
Depuis des jours que je suis sur le java juste pour créer sur la même page un div(rajouter du texte en bas de page, qui se renouvelle une fois qu'on clique sur le lien correspondant..
contente je pensais avoir vu le bout du tunnel, mais non o_O depuis des heures j'essaye de corriger mon script rien y fait, j'y connais moyen en java
si quelqu'un a une idée ou me dire quoi ajouter ou corriger pour que le fait de cliquer sur un autre lien , remplace le div (contenu précédent) au lieu de s'ajouter merci d'avance
dans mon head:




	function toggleDisplay(elmt)
{
   if(typeof elmt == "string")
      elmt = document.getElementById(elmt);
   if(elmt.style.display == "none")
      elmt.style.display = "";
   else
      elmt.style.display = "none";
}

// -->
</script>



dans mon body c'est les éléments d'un tableau sur lesquelles si on clique on a normalement le détail dans le div:

.................................


<tbody> <!-- Corps du tableau -->
       <tr>
           
		    <td><a href="#ancre1" onclick="toggleDisplay('bioact1');">wafa aamir</a><br>06/05/1968</td>
		   <td><a href="#ancre2" onclick="toggleDisplay('bioact2');">mamdouh abd aalim</a><br>10/06/1956</td>
		   <td><a href="#ancre3" onclick="toggleDisplay('bioact3');">ahmad abdel aziz<br>24/06/1954</td>
		  <td><a href="#ancre4" onclick="toggleDisplay('bioact4');">dalal abdel aziz<br>18/06/1960</td>
          
		    
	</tbody>
</table>



<div id="bioact1" style="display: none;">Biographie  1</div>
<div id="bioact2" style="display: none;">Biographie  2</div>
<div id="bioact3" style="display: none;">Biographie  3</div>
<div id="bioact4" style="display: none;">boigraphie  4</div>



</div>
  
 </body>
</html>
C'est normal qu'elle s'additionne a aucun moment dans ta fonction tu remet tes autres div à none...
donc tu pourrais faire comme ça :


<script type="text/javascript">
function toggleDisplay(elmt) 
{ 
   for (i=1; i<5; i++){
	document.getElementById("bioact"+i).style.display="none";
   } 
   document.getElementById(elmt).style.display = "block";
} 
</script>

Après personnellement je stockerais mes biographies dans une base et je ferais une requête ajax qui remplacerais le contenu html d'une seul div de type "content"...
Mais ça marche aussi comme ça.
have fun !
Modifié par Su4p (21 Jan 2011 - 11:44)