Salut!
J'essaie pour la première fois de créer un objet javascript.
Je suis au courant que la POO n'est pas vraiment applicable à ce language de prog, je n'essaie pas de réinventer la lune, mais je voulais pouvoir quand-même instancier un objet et faire appel à une de ses méthodes.
voici mon objet
J'ai ensuite fait une page de test ou j'inclus toutes les références nécessaires.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 function suggestionBox(nbrItems, divElement, targetTextBox) { alert(nbrItems); this.nbrItems=nbrItems; this.divElement=divElement; this.targetTextBox=targetTextBox; this.curPointer=0; this.selectionPointer=0; function addSuggestion(name) { alert('salut'); if (curPointer<nbrItems) { curPointer++; this.divElement.innerHTML+="<div id='suggestion"+curPointer+"' class='option'>"+name+"</div>"; } } function moveUpSelection() { if (selectionPointer>1) { selectionPointer--; document.getElementById("suggestion"+selectionPointer).class='selectedoption'; } } function moveDownSelection() { if (selectionPointer<nbrItems) { selectionPointer++; document.getElementById("suggestion"+selectionPointer).class='selectedoption'; } } function clear() { this.divElement.innerHTML=""; this.curPointer=0; } function show() { alert('test'); this.divElement.style.display='block'; } function hide() { this.divElement.style.display='none'; } }
et je mets le code suivant:
Le proglème, c'est que j'ai le message "part1" mais pas "ok".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <div id='mySuggestionDiv' class='suggestion' style='display:none'></div> <input type='text' name='myTextBox' id='myTextBox' onKeyPress="mySugBox.show();alert('bonjour');"/> <script language='JavaScript'> var mySugBox; mySugBox=new suggestionBox(5, document.getElementById('mySuggestionDiv'), document.getElementById('myTextBox')); alert('part1'); mySugBox.show(); alert('ok'); </script>
En fait, la méthode show() ne s'exécute pas....
pourquoi???
merci d'avance
Partager