Probleme lancement fonction js
Résolu
Francois47
Messages postés
114
Statut
Membre
-
Fanfan92 Messages postés 10 Statut Membre -
Fanfan92 Messages postés 10 Statut Membre -
Bonjour,
Je fais appel à vous car là je n'en peux plus ^^ impossible de trouver mon erreur.
Voila j'ai une galerie d'images avec des miniatures de la forme
Code : PHP
echo '<li onClick="show_img('.$image_id2.')">....Image....</li>';
La variable qui s'incrémente au fur et à mesure d'une boucle
Code : PHP
while ($donnees = mysql_fetch_array($reponse_mysql))
Au final on obtient donc des miniatures de la forme :
Code : PHP
<li onClick="show_img1">....Image....</li>
<li onClick="show_img2">....Image....</li>
<li onClick="show_img3">....Image....</li>
................etc...
Ensuite en fonction de chaque images je souhaite afficher un lien et un nom de catégorie. J'utilise donc la même boucle et les parties lien et nom de catégorie ont pour code :
Code : PHP
echo '<div id="lien_img_'.$image_id3.'" style="display:none">....</div>';
Code : PHP
echo '<div id="lien_img__'.$image_id4.'" style="display:none">...</div>';
Même principe donc qu'au dessus. J'ai testé tout sa et cela fonction mais mon problème viens du javascript car je veut afficher lors d'un clic sur une miniature le lien et la catégorie correspondante grâce à la fonction onClick="show_img('.$image_id2.')".
Code javascript :
function show_img(id)
{
for (var i = 1; i <= 100; i++)
{
if (i == id)
{
document.getElementById('lien_img' + i).style.display = 'block';
}
else
{
document.getElementById('lien_img' + i).style.display = 'none';
}
}
for (var i2 = 1; i2 <= 100; i2++)
{
if (i2 == id)
{
document.getElementById('lien_img_' + i2).style.display = 'block';
}
else
{
document.getElementById('lien_img_' + i2).style.display = 'none';
}
}
for (var i3 = 1; i3 <= 100; i3++)
{
if (i3 == id)
{
document.getElementById('lien_img__' + i3).style.display = 'block';
}
else
{
document.getElementById('lien_img__' + i3).style.display = 'none';
}
}
}
Et alors la j'ai fait tous les test possible et inimaginable et sa ne veut pas marcher ! J'ai essayé de garder que la partie :
Code : JavaScript
function show_img(id)
{
for (var i = 1; i <= 100; i++)
{
if (i == id)
{
document.getElementById('lien_img' + i).style.display = 'block';
}
else
{
document.getElementById('lien_img' + i).style.display = 'none';
}
}
}
Et la bizarrement cela fonctionne !
Quelqu'un aurait il une idée ^^
Merci à tous
Je fais appel à vous car là je n'en peux plus ^^ impossible de trouver mon erreur.
Voila j'ai une galerie d'images avec des miniatures de la forme
Code : PHP
echo '<li onClick="show_img('.$image_id2.')">....Image....</li>';
La variable qui s'incrémente au fur et à mesure d'une boucle
Code : PHP
while ($donnees = mysql_fetch_array($reponse_mysql))
Au final on obtient donc des miniatures de la forme :
Code : PHP
<li onClick="show_img1">....Image....</li>
<li onClick="show_img2">....Image....</li>
<li onClick="show_img3">....Image....</li>
................etc...
Ensuite en fonction de chaque images je souhaite afficher un lien et un nom de catégorie. J'utilise donc la même boucle et les parties lien et nom de catégorie ont pour code :
Code : PHP
echo '<div id="lien_img_'.$image_id3.'" style="display:none">....</div>';
Code : PHP
echo '<div id="lien_img__'.$image_id4.'" style="display:none">...</div>';
Même principe donc qu'au dessus. J'ai testé tout sa et cela fonction mais mon problème viens du javascript car je veut afficher lors d'un clic sur une miniature le lien et la catégorie correspondante grâce à la fonction onClick="show_img('.$image_id2.')".
Code javascript :
function show_img(id)
{
for (var i = 1; i <= 100; i++)
{
if (i == id)
{
document.getElementById('lien_img' + i).style.display = 'block';
}
else
{
document.getElementById('lien_img' + i).style.display = 'none';
}
}
for (var i2 = 1; i2 <= 100; i2++)
{
if (i2 == id)
{
document.getElementById('lien_img_' + i2).style.display = 'block';
}
else
{
document.getElementById('lien_img_' + i2).style.display = 'none';
}
}
for (var i3 = 1; i3 <= 100; i3++)
{
if (i3 == id)
{
document.getElementById('lien_img__' + i3).style.display = 'block';
}
else
{
document.getElementById('lien_img__' + i3).style.display = 'none';
}
}
}
Et alors la j'ai fait tous les test possible et inimaginable et sa ne veut pas marcher ! J'ai essayé de garder que la partie :
Code : JavaScript
function show_img(id)
{
for (var i = 1; i <= 100; i++)
{
if (i == id)
{
document.getElementById('lien_img' + i).style.display = 'block';
}
else
{
document.getElementById('lien_img' + i).style.display = 'none';
}
}
}
Et la bizarrement cela fonctionne !
Quelqu'un aurait il une idée ^^
Merci à tous
A voir également:
- Probleme lancement fonction js
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Fonction remplacer sur word - Guide
- Fonction somme excel - Guide
$reponse_mysql = mysql_query("SELECT * FROM images_temp ORDER BY id LIMIT $premierMessageAafficher , $nombreDeMessagesParPage ");
while ($donnees = mysql_fetch_array($reponse_mysql))
{
echo '<div id="lien_img'.$image_id2.'" style="display:none"><span class="img_lien">1. L\'utilisateur '.$creator.' l\'auteur de l\'image</span></div>';
$image_id2++;
}
Si je comprends bien, ton pb viens de la, il ne rentre pas dans la fonction show_img(id). SAns doute un pb d'echappement des differents guillemets dans l'appel à la fonction.
Essaie (en remplacant le nom de la photo bien sur) :
<?php echo "<img src=\"test.jpg\" onClick=\"show_img('.$image_id2.')\">"; ?>