test javascript avec onclick="..." - HTML/CSS - Programmation
Marsh Posté le 06-04-2006 à 09:39:12
en gros generer un double click ?
et l'évenement ondblclick ?
Marsh Posté le 06-04-2006 à 09:49:43
j'ai déjà essayé avec ondblclick et ça marche pas, d'ou mon idée de variable et de test. mais la fonction test que j'ai cité précedement ça marche pas.
Marsh Posté le 06-04-2006 à 10:24:34
HELP j'y arrive pas.
ondlbclick a priori c que pour javascript 1.2 et plus et puis ça marche pas toute façon et ma fonction non plus sniiif
HELP
Marsh Posté le 06-04-2006 à 10:25:06
Ta fonction test ne peut pas marcher. Tu déclares la variable i à l'intérieur de la fonction, donc à chaque execution de celle-ci tu as une nouvelle "instance" de ta variable.
Si tu tiens absolument à faire comme ça, il faut que tu déclares i global ( à l'exterieur de toute fonction).
jedebute75 a écrit : ça marche pas...ça marche pas. |
Marsh Posté le 06-04-2006 à 10:28:21
aaaah, bon je recommence en déclarant ma variable en dehors de la fonction... et je test
Marsh Posté le 06-04-2006 à 10:32:26
:-(((( ça marche pas!!! sniiif.
j'ai déclaré ma variable avant les fonction dans ma partie javascript et rien, à l'evênement onclick, il se passe rien.
merci pour l"info (ça servira de toute façon).
t'as pas une autre idée, ou peut être qu'il faut pas que je fasse comme ça, la fonction de test je suis pas sûr en fait??
re HELP
Marsh Posté le 06-04-2006 à 10:39:19
Montre le code entier !!! Tu n'as pas une erreur js à l'éxécution?
jedebute75 a écrit : ça marche pas |
Marsh Posté le 06-04-2006 à 10:45:19
voilà ma partie javascript :
<script language="JavaScript">
<!--
var i =0;
function montre(id) {
if (document.getElementById) {
document.getElementById(id).style.display="block";
} else if (document.all) {
document.all[id].style.display="block";
} else if (document.layers) {
document.layers[id].display="block";
}
}
function cache(id) {
if (document.getElementById) {
document.getElementById(id).style.display="none";
} else if (document.all) {
document.all[id].style.display="none";
} else if (document.layers) {
document.layers[id].display="none";
}
}
function test(id) {
if (i=0) { montre(id);
i++;}
else {cache(id);
i=0;}
}
//-->
</script>
puis dans l'html :
<li class="menu" onclick="test('smenu1');"><a href="#">rubrique</a></li>
en gros c'est un menu déroulant que je souhaite pouvoir ouvrir et fermer en cliquant sur "rubrique". mes fonction "montre" et "cache" marche super bien indépendemment de "test".
Marsh Posté le 06-04-2006 à 10:46:47
jedebute75 a écrit : HELP j'y arrive pas. |
La notion de "Javascript 1.2" n'a plus tellement de sens actuellement...
Marsh Posté le 06-04-2006 à 10:49:46
aah ok,je savais pas, merci pour l'info, je n'hésiterai donc pas à utiliser des evênements quel qu'il soit!!!
n'empêche sur mon scripte ça marche pas!!!
Marsh Posté le 06-04-2006 à 10:53:51
quelle horreur, ça c'est largement plus simple
Code :
|
avec le lien qui va avec :
<a href="#" onclick="ShowHide('elementId'); return false">Recherche avancée </a>
sur un lien A j'utilise le return false pour que le href ne soit pas pris en compte.
ensuite il faut que ton élément soit écrit de cette manière :
Code :
|
malheureusment il faut du style inline et non cacher l'élément par CSS foutue dans le header
Marsh Posté le 06-04-2006 à 10:56:54
bah ecoute je test de suite, vu que mon truc marche pas :-(((
merci merci, te tiens o courant
Marsh Posté le 06-04-2006 à 11:04:36
youpiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
géant ton truc, 4 fois moins de code... et ça marche nikel!!!!!
suis trop contente MERCI 10000fois
Marsh Posté le 06-04-2006 à 11:08:49
on peut meme agrementer le bestiaux pour faire du forcing genre
showHide('id', 's') 's' pour dire show, et h pour dire h
Marsh Posté le 06-04-2006 à 11:15:09
ah bon!!! cool! maintenant que j'ai enfin un truc qui tourne, je peux me lacher sur le scripte :-)))))... et tester
*jedebute75 est contente quand ça marche*
Marsh Posté le 06-04-2006 à 11:31:34
jedebute75 a écrit : ah bon!!! cool! maintenant que j'ai enfin un truc qui tourne, je peux me lacher sur le scripte :-)))))... et tester |
heu je voulais dire : j'ai pas encore implementé le truc, ca prend 1 minutes en faisant pleins de lignes, mais je veux le faire en 2 lignes
Marsh Posté le 06-04-2006 à 12:12:58
Code :
|
et pour lancer la fonction c'est ainsi :
ShowHide('ChampsRecherche'); ==> fait du showhide, c'est a dire, tu cliques, ca cache, tu recliques, ca affiche.
ShowHide('ChampsRecherche','h'); ==> cache le bloc pour de bon
ShowHide('ChampsRecherche','s'); ==> affiche le bloc pour de bon
on peut aussi utilser show ou hide a la place de s ou h
Marsh Posté le 06-04-2006 à 12:32:28
bah oui t'aurais du me vendre ton beau code qui marche nikel... TROP TARD hé hé hé!!!! ah toi la gloire de filer des scriptes qui marche ;-) en plus avec des codes tout beaux... et toute ma gratitude :-)))))))
MERCI gatsu35
Marsh Posté le 07-04-2006 à 22:51:35
Code :
|
Là tu mets 0 dans i, puis tu teste si le résultat est non nul, ce qui est toujours faux.
(hum, je sais pas si c est clair...)
bref, tu aurait dû écrire:
if (i==0) { montre(id); i++;}
Marsh Posté le 07-04-2006 à 23:00:31
Ah vi c'est vrai, j'avais pas vu, mais bon tu arrives trop tard, la dame à un super script qui fonctionne comme elle le veut et qui est DOM Compliant
Marsh Posté le 10-04-2006 à 11:35:53
aaaah j'arrive en retard... mais c vrais, j'avais pas vu et pourtant quelle erreur grossière hein!!! bon comme dit gatsu j'ai tout ce qu'il me faut maintenant mais ça m'apprendra...
"jedebute75 devrait apprendre à relire ses scriptes correctement :-((( "
Marsh Posté le 10-04-2006 à 11:37:25
nargy a écrit : ça me démangeait quand même, hein! |
J'aurai aussi du regarder, mais bon ton code était mal pensé dès le départ
il fallait jouer sur la valeur du display de l'élément
Marsh Posté le 10-04-2006 à 11:40:29
bah oui, m'enfin mon pseudo c pas pour rien, je debute mais j'avance... ;-)
Marsh Posté le 06-04-2006 à 09:35:03
voilà, j'ai créé deux fonction action1() et action2()
dans mon code html, j'ai a un moment un onclik= "action1('menu');"
en fait, je voudrais créer une variable initialisé à 0. lors du "onclik", il faudrait pouvoir tester cette variable, si elle est égale à 0, c'est la fonction action1() qui va être executé et ma variable va prendre la valeur 1. si la variable est égale à 1, c'est ma fonction action2() qui va s'exécuter et ma variable va prendre la valeur 0.
le problème, c'est que je ne sais pas trop ou placer ce scripte.
et faut t'il créer une fonction pour ça.
j'ai pensé à un truc du genre :
function test {
var i =0;
if (i=0) {action1()
i++; }
else { action2()
i=0;}
}
et après onclik ="test('menu');"
quelqun peux m'aider ?