begin process at 2012 05 29 03:50:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

event et FF3


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

event et FF3

mardi 4 mars 2008 à 00:13:24 | event et FF3

lowkey

Bonsoir à tous !!

Je viens de tester la source : http://www.javascriptfr.com/tutoriaux/POSITION-SOURIS-DANS-PAGE_478.aspx

function WhereMouse( e ){
  var DocRef;    // Variable pour IE uniquement

  // L'événement est passée à la fonction
  // donc tous sauf IE.
  if(
e){                     // Dans ce cas on obtient directement la position dans la page
    Mouse_X = e.
pageX;
    Mouse_Y = e.
pageY;
  }
  else{                     
// Dans ce cas on obtient la position relative à la fenêtre d'affichage
    Mouse_X =
event.clientX;
    Mouse_Y =
event.clientY;

    //-- Il faut traiter le CAS des DOCTYPE sous IE
    if(
document.documentElement && document.documentElement.clientWidth) // Donc DOCTYPE
      DocRef =
document.documentElement;   // Dans ce cas c'est documentElement qui est réfèrence
    else
      DocRef =
document.body;                   
// Dans ce cas c'est body qui est réfèrence

    //-- On rajoute la position liée aux ScrollBars
    Mouse_X += DocRef.scrollLeft;
    Mouse_Y += DocRef.scrollTop;
  }
}

Il est dit que la variable e est passée pour tous les explorateurs, sauf IE. Or, sous Firefox 3, e n'existe pas non plus... Ce qui rend ce code inutilisable...
Quelqu'un aurait une idée de comment gérer ce probleme?

Merci d'avance et bonne soirée (bonne matinée en faite)


lowkey
mardi 4 mars 2008 à 09:55:13 | Re : event et FF3

bultez

Membre Club


Bonjour,

    regarde ici         mais les exemples pullulent


                Cordialement            Bul         [mon Site]     [M'écrire]
mardi 4 mars 2008 à 19:14:15 | Re : event et FF3

PetoleTeam

Membre Club
Bonjour,
...e n'existe pas sous FF3...,

en fait e représente l'événement qui est lié une fonction de gestion d'événement, c'est un paramètre qui est passé à de telle fonction par FF

Je pense que tu n'appelles ou n'utilises pas correctement la fonction
un petit exemple complet de l'utilisation de celle ci

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
#D_MAIN {
  width : 2000px;
  height : 2000px;
}
#D_INFO {
  position : absolute;
  width : 100px;
  height : 50px;
  border : 1px solid red;
}
</style>
<script type="text/javascript">
var Mouse_X;
var Mouse_Y;
//----------------------
function WhereMouse( e ){
  var DocRef;    // Variable pour IE uniquement
  // L'événement est passée à la fonction
  // donc tous sauf IE.
  if( e){                    // Dans ce cas on obtient directement la position dans la page
    Mouse_X = e.pageX;
    Mouse_Y = e.pageY;
  }
  else{                      // Dans ce cas on obtient la position relative à la fenêtre d'affichage
    Mouse_X = event.clientX;
    Mouse_Y = event.clientY;
    //-- Il faut traiter le CAS des DOCTYPE sous IE
    if( document.documentElement && document.documentElement.clientWidth) // Donc DOCTYPE
      DocRef = document.documentElement;   // Dans ce cas c'est documentElement qui est réfèrence
    else
      DocRef = document.body;              // Dans ce cas c'est body qui est réfèrence
    //-- On rajoute la position liée aux ScrollBars
    Mouse_X += DocRef.scrollLeft;
    Mouse_Y += DocRef.scrollTop;
  }
  //-- Juste pour l'exemple
  var Obj = document.getElementById('D_INFO');
  Obj.style.left = Mouse_X +"px";
  Obj.style.top  = Mouse_Y +"px";
  Obj.innerHTML  = "X = " +Mouse_X +"<br>Y = " +Mouse_Y;
}
//-- l'evenement a observer
document.onmousemove = WhereMouse;
</script>
</head>
<body>
<div id="D_MAIN"></div>
<div id="D_INFO">Position</div>
</body>
</html>
à toi de jouer

;O)
mardi 4 mars 2008 à 19:32:05 | Re : event et FF3

lowkey

Salut Petrole !

Effectivement, c'est moi qui ai mal compris.
Il y a juste une chose qui me dérange encore. Voila la fonction que j'avais faite :

function deplace(e)
{
        var evt =  e || window.event;
        var moveX = evt.clientX;
        var moveY = evt.clientY;
}

Or, d'apres la fonction, pour FF ou autre, il faut utiliser pageX; etpageY;. Mais meme sous FF mon moveX et moveY étaient bon.
pageX et pageY sont alors vraiment necessaires?



lowkey [ Lien ]
mardi 4 mars 2008 à 19:40:51 | Re : event et FF3

PetoleTeam

Membre Club
Réponse acceptée !
Bonjour,
pour faire simple clientX et clientY renvoi la position par rapport à la fenêtre d'affichage qu'il y ai ou non un scroll en cours, c'est souvent l'erreur que font certains et lorsque le document est scrollé l'affichage, d'une infobulle par exemple, ne ce fait pas au bon endroit...
Pour t'en convaincre, dans l'exemple complet ci dessus, intégre clientY et clientX en lieu et place de ce qui existe et tu verras qu'au scroll ça bugue...

  var evt =  e || window.event;
  Mouse_X = evt.clientX;
  Mouse_Y = evt.clientY;
  var Obj = document.getElementById('D_INFO');
  Obj.style.left = Mouse_X +"px";
  Obj.style.top  = Mouse_Y +"px";
  Obj.innerHTML  = "X = " +Mouse_X +"<br>Y = " +Mouse_Y;

;O)
mardi 4 mars 2008 à 19:44:19 | Re : event et FF3

PetoleTeam

Membre Club
Réponse acceptée !
pour être un peu plus complet FF intégre le scroll dans pageX et pageY, et comme tu peux le voir dans la fonction, on utilise clientX et clientY pour IE en ajoutant le décallage due au scrolling...

PS: Petole et non Petrole, j'ai toujours manqué d'R...
;O))
mardi 4 mars 2008 à 20:06:09 | Re : event et FF3

lowkey

Merci pour les infos Petole !! (et désolé pour ton nick)
mardi 4 mars 2008 à 20:11:19 | Re : event et FF3

PetoleTeam

Membre Club
pas de mal et merci du retour...
;O)


Cette discussion est classée dans : position, cas, mouse, event, docref


Répondre à ce message

Sujets en rapport avec ce message

TextArea ou Select et position de la souris [ par 6BerYeti ] Bonjour,Je souhaite faire afficher une infobulle là où est le curseur (avec un offset) et à la déplacer qd la souris se déplace.J'ai à peu près tout c Connaître la position du curseur à un temps donné [ par jdmcreator ] Bonjour,J'ai une question tout bête que je ne suis pas capable de régler. Je voudrais avoir la position du curseur à chaque seconde. J'ai tenté d'util Probleme deplacer la souris [ par maxime5000 ] Bonjour j'ai suivice tuto pour deplacer la souris ou en veut et sa marche pas [url=http://www.javascriptfr.com/tutoriaux/POSITION-SOURIS-DANS-PAGE_47 Comprend pas le code. [ par C21H30O2 ] Bonjour à tous, je tient à préciser que je ne connait pas le javascript mais que j'ai des connaissances en prog, (les boucles, instructions conditionn Problême affichage menu sous chrome et firefox. [ par stef1010 ] Bonjour, j'ai décidé de franchir le grand pas : créé mon site. J'ai récupéré un code sources de se site avec un menu qui réagis quand la souris se pos Probleme actualisation .js [ par woutwout ] Bonjour, j'essaye de coder une page html qui fait apparaitre une carte de google map, et j'aimerai grâce à un script .js pouvoir changer la position d Prototype/Scriptaculous && Background-position [ par DakM ] Bonjour ! J'ai ce calque: [code=js]var div = new Element('div', {'id': this._id, 'class': css.map.container, 'style': 'display:none; width: 100%; hei probleme enchainement de fonction [ par loicseg ] Bonjour, voilà j'aimerai se faire enchainer plusieurs actions a la suite, dont voici le code : function move(){ var igrec=window.event.offsetY var ix Enregistrer dans BDD sans rafraichir la page [ par g rycane ] Bonjour à tous! Je commence à peine à apprendre le Javascript et AJAX et j'ai besoin de votre aide pour un soucis sur lequel je flanche depuis quelque Créer un parcours pour mon labyrinthe [ par VouMi ] Salut à toi! Alors voilà mon petit problème.. je veux créer un labyrinthe dans le code source que j'ai déjà : <meta http-equiv="Conte


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,655 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales