11521 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
j'essaie de solutionner depuis plusieurs jours un probleme assez incompréhensible au sujet de 2 fonctions javascript qui ne fonctionnent pas avec un doctype.

j'ai eu beau essayer 5 doctype différents et rien n'y fait. cependant ces 2 fonctions marchent tres bien sans doctype.

Autre point c'est que il y a 3 fonctions javascript, la première fonctionne sans problème, ce sont les 2 autres qui ne fonctionnent pas soit la fonction zoom et la fonction normal.


<!DOCTYPE html>
<html>
    <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="Site de ..........etc"/>
<title>Page personnelle <?php if (isset($pseudo) && !empty ($pseudo)) {echo $pseudo;}?></title>
<link href="Design/LastPersoDesign.css" rel="stylesheet" type="text/css"/>
<link rel="icon" type="image/png" href="images/inProgress/favicon32PNG.png" />
<!--[if IE]><link rel="shortcut icon" type="image/x-icon" href="favicon32x32.ico" /><![endif]-->

<style type="text/css">
.Blanc    {

	color: white;
	text-align: center;
}	
</style>
<script type="text/javascript">//<![CDATA[
	
	function open_infos()
     {
       window.open('messagerie/messagerie.php','ouvreForm','menubar=no, scrollbars=no, top=100, left=500, width=500, height=280');
     }

//Cette fonction zoom qui ne fonctionne pas	
               function zoom(x) {
			largeur=x.width;
			hauteur=x.height;
			zoom_= 2.5;
			x.style.height = hauteur*zoom_;
			x.style.width = largeur*zoom_;

		}

		function normal(x) {

			x.style.height = hauteur;
			x.style.width = largeur;
		}		
		 
</script>
</head>

<body>

<table border="1">
	<tbody>
	<?php
	while ($val = mysql_fetch_array($resultat)) {
		if ($j%$NbrCol == 1) {
			$NbrLigne++;
			$fintr = 0;
			echo '<tr>';
		}
	?>	
	<td width="20%">
		<?php	
			
			// -------------------------
			// DONNEES A AFFICHER dans la cellule
			$image="uploads/files/thumbnail/".$val['picture_file'];

			echo "<img onmouseover='zoom(this)' onmouseout='normal(this)' src='".$image."'/>";
			//echo "<img src=uploads/files/thumbnail/".$val['picture_file']." alt='photo  ' ";
			// -------------------------
		?>
		
	</td>
		<?php	
		if ($j%$NbrCol == 0) {
			$fintr = 1;

		 ?>
	 </tr>
		<?php		}
		$j++;
	} // fin while
		// fermeture derniere balise /tr
	if ($fintr!=1) {
		?>
			</tr>
		<?php
	} ?>
	</tbody>
	</table>

</body>
</html>


Modifié par monlou (01 Feb 2017 - 19:41)
Bonjour,
Essayez en ajoutant l'unité à vos styles, par ex.
x.style.width = (largeur*zoom_)+"px";
Meilleure solution
merci Seven tears pour ta réponse

c'est une très bonne idée et ca fonctionne tres bien maintenant

merci beaucoup

function zoom(x) {
			largeur=x.width;
			hauteur=x.height;
			zoom_= 2.5;
			x.style.height = (hauteur*zoom_)+"px";
			x.style.width = (largeur*zoom_)+"px";
			
		}

		function normal(x) {

			x.style.height = (hauteur)+"px";
			x.style.width = (largeur)+"px";
		}