Accueil > Forum > > > > Programmation objet et attachement d'evenement
Programmation objet et attachement d'evenement
mercredi 4 janvier 2006 à 17:40:44 |
Programmation objet et attachement d'evenement

MaX3315
|
Bonjour à tous, Voici de façon simplifiez mon problème. function monObjet(id) { this.id=id; this.div=document.getElementById(id); this.overDiv=overDiv; if(document.all) { this.div.attachEvent('onmousemove',this.overDiv); } else { this.div.addEventListener('mousemove',this.overDiv,false);} } function overDiv() { //PROBLEME //ici this.id me donnera pas l'id de l'objet javascript //comment contourner ce problème? } Si quelqu'un à une idée... une fois ca résolu, j'aurai un nouveau script que je pense intéressant à poster sur codes sources  ... du chantage? mais non mais non  MaX3315
|
|
mercredi 4 janvier 2006 à 22:02:46 |
Re : Programmation objet et attachement d'evenement

PhiL666
|
normal dans ton cas ... le this envoyé sera l'object DIV jétais tombé sur le même problème en faisant mon dernier script (http://www.javascriptfr.com/code.aspx?ID=35396)
pour remédier au prob., jai utilisé un tableau pour stocké les infos (plutôt que des objets) et il te reste plus qu'à appeler la fonction overDiv avec leur id - overDiv(id)
un exemple de code vaut mille mots donc regarde rapidement mon script ;)
|
|
mercredi 4 janvier 2006 à 22:07:09 |
Re : Programmation objet et attachement d'evenement

PhiL666
|
Réponse acceptée !
tu pourais à la limite stocké tes objets dans un tableau ... tjrs en utilisant des id
|
|
mercredi 4 janvier 2006 à 22:12:50 |
Re : Programmation objet et attachement d'evenement

MaX3315
|
Réponse acceptée !
Ouep, ben c'est ce vers quoi je me suis diriger pour le moment, mais ca me donne un code vraiment pas très propre mix entre une programmation objet et classique. En fait je crois qu'au final je vais enregistrer tous mes objets dans un array accessible depuis document. et j'ajoute une fonction findObj(id) qui retournera l'objet voulu... Pour mon script en cours c'est par ici : http://codessources.votre-web.com/news_scroller_beta1.html (je posterai une version propre et commenté dans les jours à venir). Merci en tout cas de t'être penché sur le problème 
|
|
mercredi 4 janvier 2006 à 22:13:38 |
Re : Programmation objet et attachement d'evenement

MaX3315
|
Lol, les grands esprit se croise...
|
|
mercredi 4 janvier 2006 à 22:24:16 |
Re : Programmation objet et attachement d'evenement
|
mercredi 4 janvier 2006 à 23:28:54 |
Re : Programmation objet et attachement d'evenement

rrk275
|
En fait je crois qu'au final je vais enregistrer tous mes objets dans un array accessible depuis document. et j'ajoute une fonction findObj(id) qui retournera l'objet voulu...    pfffff... if(document.all) { this.div.attachEvent('onmousemove',function (){alert(id)}); } else { this.div.addEventListener('mousemove',function (){alert(id)},false); on peut meme pour racourcir var mafonction = function (){alert(id)}//la ff est une variable de fonction !! if(document.all) { this.div.attachEvent('onmousemove',ff); } else { this.div.addEventListener('mousemove',ff,false); par contre ne mettrez pas de this.id !!! il le transformerait pas....  Il existe des solutions pour tout ... sans tout crader !! en esperant ne pas etre arrivé trop tard ... rrk275
|
|
mercredi 4 janvier 2006 à 23:42:11 |
Re : Programmation objet et attachement d'evenement

MaX3315
|
Oups un peu tard... voici avec la soluce d'un tableau et d'une solution en 'global' : http://codessources.votre-web.com/news_scroller_beta2.html
Pour la soluce de rrk275 elel attendra une bonne nuit de sommeil... je rste toutefois assez ceptique puisque c'est la solution que j'avais tester en premier. Mais une fois les yeux à nouveau en fasse des trous je referrai un essai.
J'ai toutefois un gros point noir dans le dernier code.... il devrait y avoir un attachEvent('action',mafonction); et pas attacheEvent('action',ff)... je vois pas d'ou il sort ce ff.
Est dans ce cas c'est exactement la même chose que mon code... et dans ce cas j'ai pas reussi à recuperer l'objet (au sens programmation objet)... et non pas objet du DOM...
Bonne nuit et à demain.
|
|
jeudi 5 janvier 2006 à 00:25:49 |
Re : Programmation objet et attachement d'evenement

rrk275
|
a dsl le ff c'était ma variable de dans un autre code et j'avais pas relu mais je suis sur ca marche fin ca ne permet que la lecture de this.id.Et si ta solution n'a pas marché je pense que c'est parce que tu avait mis this.id .. fin je ne peux pas lires tes codes non publiés ... var mafonction = function (){over(id)}//la ff est une variable de fonction !! if(document.all) { this.div.attachEvent('onmousemove',mafonction); } else { this.div.addEventListener('mousemove',mafonction,false);
rrk275
|
|
jeudi 5 janvier 2006 à 09:32:02 |
Re : Programmation objet et attachement d'evenement

MaX3315
|
re-Bonjour
Alors voila exactement ce que je test
function MAX3315_Container(idNode) { //initialisation this.id=idNode; this.obj=document.getElementById(this.id); //proprietes this.listNews=Array(); this.currentIndex=0; this.inPause=false; this.initilised=false;
//on ajoute les listener (pause au survole et click) if(document.all) { this.obj.attachEvent('onmousemove',this.overContainer); } //methodes / listener de l'objet Container this.overContainer=MAX3315_overContainer; //SOLUTION DU TABLEAU GLOBAL - FONCTIONNANT ACTUELLEMENT //enregistrement de l'objet dans la liste global this.indexInGlobalContainerList=MAX3315_globalListNewsScroller.length; MAX3315_globalListNewsScroller.push(this); return; }
function MAX3315_overContainer(aEvent) { //ici this devrait correspondre à l'instance de mon objet de class Container // or this reference l'objet du DOM du coup this.id === domNode.id // et non pas this.id===objectContainer.id //pour verifier cela rien de plus simple... si je fait this.uneAutrePropriete j'obtient toujours 'undefined' //alors que this.nodeName ou autre attribut du DOM me retourne bien }
Voila donc le problème... je pense que pour comprendre ce qui me pose probleme il faut mieux ce dire que j'ai besoin de recupérer this.listNews par exemple, une des propriete de l'object (class Container). Car il est toute à fait normal dans mon cas de recupere this.id puisque this.id==DOMNode.id==object.id... mais sinon c'est pas bien grave, j'ai reussi a contourne le probleme de facon a peu pres potable.
Reste à rendre ca compatible safari et IE...
|
|
Cette discussion est classée dans : objet, programmation, id, div, overdiv
Répondre à ce message
Sujets en rapport avec ce message
connaitre la position (coordonnées) du curseur de la souris? [ par johanb ]
Bonjour à tous, tous est dis dans le titre.Je sais c'est censé être qqc de basique, mais j'ai du mal. Voici l'origine de mon probleme: j'ai une liste
Bouton radio (affichage de div suivant le choix) [ par Scooper ]
Bonjour,Je suis en train de créer un système de questionnaire en PHP/MySQL où suivant le choix de l'utilisateur, telle ou telle question s'affiche à l
Trouvez l'erreur ! (redimmensionner un DIV) [ par supergrey ]
Donc voila j'ai mis un DIV qui contient une image et je voudrais que ce calque diminue jusqu'a disparaitre, voila mon code:function Diminuer(){ widt
coucou , je suis dans la M...... [ par frvfrvfrvfrv ]
salut à tous,j'essaye de faire bouger des div , de facon auto , j'ai deja avancer grace à vous tous. Mais pour la suite j'arrive pas a faire la logiqu
[DOM]Conserver une valeur après ajout d'un child [ par malalam ]
Hello,le titre n'est pas super clair parce que je ne savais pas comment résumer.J'appelle une fonction sur un évènement (onchange d'un select : bref,
Comment atteindre un objet au-dessus de l'objet document ? [ par sbertho ]
Dans une page, je crée dynamiquement une div avec un id. Cette div contient un table contenant un iframe.Cette iframe fait appel à une page HTML.Dans
document.getElementById() .div [ par abdoulax ]
Bonjour, Je voulais faire un truc du genre : document.getElementById(id).div.style.paddingTop="0px"; En faite je veux modifier le style des div enfa
Ouvrir un div + drag&drop [ par yanis7518 ]
Salut a tousvoila j'ai une page avec un div fermé(mais que l'on peut ouvrir en cliquant sur un bouton) dans ce div je peux faire des drag&drop d'objet
Ajouter un Div dans un li [ par yanis7518 ]
Salut a tous je souhaiterais pouvoir créer et ajouter des div dans des balises li créées dynamiquementvoici mon code var newLi= document.createElem
addEventListener et objet avec this [ par Shinji49 ]
Bonjour,J'ai beau rechercher partout, je ne trouve pas la solution ! J'ai tout essayé mais rien n'y fait.Alors, voila, je souhaite ajouter une fonctio
Livres en rapport
|
Derniers Blogs
COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ?MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ? par junarnoalg
La prochaine session de MyTIC aura lieu à Namur, le 23 mars prochain. Pendant presque une heure, nous parlerons de SharePoint 2010. Voici un aperçu du programme.
Accueil : 17h30 Début de la session : 18h00 - Les nouvelles int...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
Comparez les prix

HTC Hero
Entre 550€ et 550€
|