cedriclomb
Messages postés275Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention27 avril 2010
-
29 août 2007 à 14:07
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
30 août 2007 à 14:34
Bonjour,
Voila j'ai un formulaire avec des champs qui ressemble a ca
<label for= "qf_a29936">Envoie un mail aux responsables après la validation du formulaire public</label>
Et pour en faire des infos bulles je pensair faire tout simplement :
<script language="javascript" type="text/javascript">
function initForm(){
var labels=document.getElementsByTagName('label');
for(i=0;i<labels.length; i++){
labels[i].className='info';
content=labels[i].innerHTML;
labels[i].innerHTML=' ';
//Jusque la ca marche
labels[i].onMouseOver ='alert("ok")';
}
}
initForm();
</script>
Le seul probleme c'est que le onMouseOvern'est pas ajouté et donc pas reconnu et aucun evenement, j'ai ensuite essayé sur un onclick de la checkbox meme resultat..
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 29 août 2007 à 15:41
Salut,
Tiens d'ailleurs, bultez tant que t'es là :
Comment on peut lui passer un paramètre à la fonction ? Du style :
labels[i].onMouseOver=function() { i = i + 1; alert(i); } ______________________________________
DarK Sidious
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 29 août 2007 à 17:00
Salut,
Bultez : c'est justement ce que je cherche à faire (appeler une fonction dans une boucle) ! :( Tu as une solution ?
Car j'ai un formulaire avec une table contenant une bonne centaine de DIV, et à chacun, j'affiche un combo lors d'un click sur la cellule de la table.
Le problème c'est que la page HTML pèse lourd du coup (la répétition des onclick="function(3, 4);" ca fait pas mal d'octets pour rien au final !
______________________________________
DarK Sidious
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 30 août 2007 à 05:52
document.frm.t[n].onmouseover=function() { fonction_commune(paramètres...); }
c'est ce que tu veux ? j'ai compris ? ou je suis totalement à coté de mes pompes ?
mais avec l'indice ou l'index (n), je ne sais pas faire,
je vais poser la question dans ce forum, c'est fait pour ça malgré tout.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 30 août 2007 à 06:11
Salut,
Te prends pas la tête, je vais ouvrir un nouveau topic, mais sinon, oui c'est à peu près ce que je veux obtenir : j'ai un tableau à deux dimension qui doit afficher un combo. Au départ, je mettais le combo directement dans chaque cellule de la table, je montais à 1 Mo environ pour la page !!! Je te dis pas le temps de chargement !
Du coup, j'ai fait différement : j'ai mis juste un DIV pour chaque cellule, et je n'affiche le combo que lors du clic dans la cellule : je suis descendu à 300 Ko pour ma page, ce qui est encore assez gros !
Du coup, j'avais pensé définir l'évenement onclick en dynamique, et non plus en static pour y gagner encore quelques Ko !
Et du coup, je cherche un truc du genre :
for (var i = 0; i < 100; i++) {
for (var j = 0; j < 100; j++) {
document.getElementById('cell' + i + '_' + j).onmouseover = function() {
click(i, j);
}
}
}
mais comme tu le fais remarquer, la fonction click est bien déclenchée lors du click sur la cellule, mais avec pour indice : 100, 100 !
______________________________________
DarK Sidious