utiliser onClick sur une <div>

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : utiliser onClick sur une <div>

par Ryle » 05 oct. 2007, 11:51

Effectivement, ton window.location.href n'a rien à faire dans une boucle à l'intérieur de ta fonction, mais aurait plus sa place à la fin de la fonction :)

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)

par Invité » 05 oct. 2007, 09:33

oui oui, j'ai bienf ait tout ca (je ne suis pas si bête que ça)
Bon j'ai trouvé une solution, j'ai placé document.location.href ailleurs dans le code, et là ca amrche.
MErci pour votre aide

par Tracker » 04 oct. 2007, 20:44

Seconde question bête dans le header de ta page html tu as bien référencé les source js de prototype ou mootools, parque sinon la function $(...) n'existe pas...

par Berzemus » 04 oct. 2007, 19:23

question bête: as-tu crée une ancre avec comme nom "top" ?
(on ne sait jamais)

par Invité » 04 oct. 2007, 14:23

en essayant avec

Code : Tout sélectionner

document.location.href='#top'
ca ne marche toujours pas. Je ne vois pas comment faire.

par Invité » 04 oct. 2007, 11:27

oui effectivement, le problème doit venir du script js de l'accordeon qui dépli et repli les différentes balises div.

Alors du coup, je l'ai mis dans cette fonction (function Accordian) car il me semble que c'est là qu'a "lieu" le onClick mais sans succès..

Code : Tout sélectionner

//Accordian Initializer function Accordian(d,s,tc){ // get all the elements that have id as content l=$(d).getElementsByTagName('div'); c=[]; for(i=0;i<l.length;i++){ h=l[i].id; if(h.substr(h.indexOf('-')+1,h.length)=='content'){c.push(h);} } sel=null; //then search through headers for(i=0;i<l.length;i++){ h=l[i].id; if(h.substr(h.indexOf('-')+1,h.length)=='header'){ d=$(h.substr(0,h.indexOf('-'))+'-content'); d.style.display='none'; d.style.overflow='hidden'; d.maxh =sh(d); d.s=(s==undefined)? 7 : s; h=$(h); h.tc=tc; h.c=c; // set the onclick function for each header. h.onclick = function(){ for(i=0;i<this.c.length;i++){ window.location.href='#top'; <-<-<-<-<-<- cn=this.c[i]; n=cn.substr(0,cn.indexOf('-')); if((n+'-header')==this.id){ ex($(n+'-content')); n=$(n+'-header'); cc(n,'__'); n.className=n.className+' '+n.tc; }else{ cl($(n+'-content')); cc($(n+'-header'),''); } } } if(h.className.match(/selected+/)!=undefined){ sel=h;} } } if(sel!=undefined){sel.onclick();} }
Une idée peut être ?

par Berzemus » 04 oct. 2007, 10:20

d'habitude tu peux aussi enlever le "top":
<div onClick="window.location.href='#;">xxx</div> 
Si aucune ancre n'est spécifiée, on retourne en haut de page.

Mais pourquoi ne pas mettre un petit lien, vers le haut de page ?

par Ryle » 04 oct. 2007, 10:00

Bah euh... si, bien sur que l'on peut... Si tu utilises le code suivant dans une bête page html et que tu cliques sur le xxx, tu verras que le #top apparait bien dans l'url :
<div onClick="window.location.href='#top';">xxx</div>
Maintenant, si cela ne fonctionne pas chez toi, il y a manifestement un soucis. Celui-ci est peut être du à ton script d'accordéon qui doit déjà capturer l'événement du click pour (dé)plier le div. C'est donc peut être au niveau de ses fonctions qu'il te faut regarder et peut être ajouter ton #top :)

par Invité » 04 oct. 2007, 09:55

oui biensur j'ai essayé mais cela ne marche pas. J'aurais voulu savoir pourquoi. Il est vrai que ma question est mal tournée..
On ne peut alorq pas faire de onClick sur une balise div ?

par Ryle » 04 oct. 2007, 09:48

Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "Javascript, AJAX".


Quant à ta question, j'en aurais une simple : as-tu essayé ? c'est le meilleur moyen de voir si cela fonctionne ou pas, et tu auras une réponse immédiate au lieu d'attendre que quelqu'un passe ici et te réponde :)

utiliser onClick sur une <div>

par Invité » 04 oct. 2007, 09:16

Bonjour tout le monde, j'utilise un script accordion qui me permet de faire "un ascenceur" avec du contenu.
J'aurais voulu savoir s'il était possible de faire ceci :

Code : Tout sélectionner

<div id="test1-header" class="accordion_headings" onClick="window.location.href='#top';">
afin d'être redirifé systématiquement en haut de page.