IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

onmousemove se d�clenche en permanence sous IE


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    344
    D�tails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 344
    Par d�faut onmousemove se d�clenche en permanence sous IE
    Bonjour

    J'ai pas mal cherch� dans le forum et test� plein de solutions, mais � chaque fois IE me lance bizzarement en permanence l'�ve�nement onmousemove, alors que cela fonctionne tr�s bien avec FX.

    Voici le code tr�s simple, juste pour tests et repris depuis un autre post ici :

    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
    <html>
    <head>
     
    <script language="javascript">
     
    function MouseOrKey() {
           document.getElementById('test').value = new Date();
    }
     
    function MouseOrKeyFX(evt) {
           document.getElementById('test').value = new Date();
    }
     
    function MouseOrKeyMS() {
           document.getElementById('test').value = new Date();
    }
     
    // essai n°1
    /*if ( document.captureEvents ) {
       document.captureEvents(Event.MOUSEMOVE); 
       document.onmousemove = MouseOrKeyFX; 
    } 
     
    document.onmousemove = function(e) {
       MouseOrKeyMS(event);
    }*/
     
    // Essai n°2 : 
    //document.onmousemove = MouseOrKeyMS(); // conjointement avec le code pour FX
     
    // Essai n°3
    (window.document.attachEvent) ? window.document.attachEvent("onmousemove", MouseOrKey) : window.addEventListener("mousemove", MouseOrKey, false);
     
    </SCRIPT>
    </head>
    <body>
    <input id="test" type="text" size="50">
    </body>
    </html>
    Si j'essaie document.body.onmousemove au lieu de document.onmousemove plus rien ne se produit sous IE.

    J'avoue ne plus savoir que faire, quelqu'un aurait-il une explication ?

    Merci
    Loko

  2. #2
    Expert confirm�
    Avatar de le_chomeur
    Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2006
    Messages
    3 653
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 3 653
    Par d�faut
    normal , tu dois travailler sur un �l�ment , donc le body et non le document

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    344
    D�tails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 344
    Par d�faut
    Oui mais non. comme indiqu� dans mon pr�c�dent message, plus rien ne se passe si je fais document.body.onmousemove, cad que sous IE l'evenement n'est jamais d�clench� !
    Par contre il est d�clench� en permanence avec window.document.attachEvent.

    A noter que sous IE, j'ai au d�part un message du style "pour prot�ger votre ordinateur le contenu a �t� bloqu�" et j'ai cliqu� pour accepter/d�bloquer, je ne sais pas si cela joue.

  4. #4
    Membre �clair�
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    344
    D�tails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 344
    Par d�faut
    Nouveau test : si je fais :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    <ul>
    		<li onmousemove="MouseOrKey();">G&eacute;n&eacute;ral</li>
    ca marche nickel meme sous IE.

    Par contre ceci :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <body onmousemove="MouseOrKey();">
    me ram�ne au m�me probl�me : ca marche sous FX mais sous IE c'est d�clench� en permanence.

    Quelqu'un a t-il une solution ?

  5. #5
    Expert confirm�
    Avatar de le_chomeur
    Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2006
    Messages
    3 653
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 3 653
    Par d�faut
    tu peux m'expliquer ce que tu veux faire au final ?

    sinon :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        function AddEvent(a, b, c) {
            try {
                if (a.addEventListener) {
                    a.addEventListener(b, c, false)
                } else if (a.attachEvent) {
                    a.attachEvent('on' + b, c)
                }
                return true
            } catch(err) {
                return false
            }
        }
    puis tu appel comme ceci : AddEvent(a,b,c) ou
    a : objet cibl�. ( par exemple document.body )
    b : �v�nement (met mouseclick pour tester)
    c : action ((met un alert("toto")))

    :-)

  6. #6
    Membre �clair�
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    344
    D�tails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 344
    Par d�faut
    J'ai essay� ton exemple avec une div, et j'ai le meme souci.

    Pour r�sumer, quelque soit le code utilis�, sous IE le 'onmousemove' r�agit comme un 'onmouseover', cad qu'il d�clenche la fonction en permanence quand je laisse mon pointeur au dessus de l'element en question, meme sans le bouger.

    Par contre ca fonctionne bien, egalement sous IE, avec un autre evenement par exemple (on)Click, mais ce n'est pas ce que je souhaite.

    (je voudrais lancer une alerte apr�s un certain temps d'inactivit�, et donc d�sactiver cette alerte par un mousemove ou keypress)

Discussions similaires

  1. onmousemove sous opera 11
    Par soccersoft dans le forum G�n�ral JavaScript
    R�ponses: 0
    Dernier message: 13/01/2011, 11h39
  2. R�ponses: 2
    Dernier message: 26/02/2010, 10h15
  3. Redirect permanent sous domaine
    Par lelectronique.com dans le forum Apache
    R�ponses: 5
    Dernier message: 25/10/2009, 16h54
  4. R�ponses: 6
    Dernier message: 27/08/2007, 13h37
  5. onmouseover qui ne se d�clenche pas sous IE...
    Par narnou dans le forum G�n�ral JavaScript
    R�ponses: 7
    Dernier message: 21/03/2006, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo