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 :

Methode Click() Chrome/IE ?!


Sujet :

JavaScript

  1. #1
    Membre averti Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Points : 329
    Points
    329
    Par défaut Methode Click() Chrome/IE ?!
    Bonjour à tous,
    j'ai cherché sans succès une solution à mon pb.

    Tout simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <html>
    <head/>
    <body>
     
    <li id="lii" onClick="alert('test');" >test</li>
     
    <script>
    document.getElementById("lii").click();
    </script>
    </body>
    </html>
    Sur firefox l'alerte est donc déclanchée toute seule, IE lui me demande de valider les activX, tandis que chrome me crache cette erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Uncaught TypeError: Object #<HTMLLIElement> has no method 'click'

    Need help, je développe une webApp, et cette methode me sert énormément, une solution ? une de rechange ?

    (PS: je peux me passer largement de IE).
    Merci d'avance.

  2. #2
    Membre averti Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Points : 329
    Points
    329
    Par défaut
    Bon je viens de trouver une méthode alternative. Elle fonctionne.

    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
     
    function doClick(obj) {
    	try {
    	var evt = document.createEvent("MouseEvents");
    	evt.initMouseEvent("click", true, true, window,0, 0, 0, 0, 0,
    	false, false, false, false, 0, null);
    	var canceled = !obj.dispatchEvent(evt);
    	if(canceled) {
    	// A handler called preventDefault
    	} else {
    	// None of the handlers called preventDefault
    	}
    	} catch(er) {
    	obj.click(); //IE
    	}
    }

    Il faut appeler cette fonction à la place de click()

  3. #3
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Citation Envoyé par Pymento Voir le message
    ..., tandis que chrome me crache cette erreur:
    [
    Uncaught TypeError: Object #<HTMLLIElement> has no method 'click'
    ]
    ...ce qui est tout-à-fait conforme aux specifications ^^

    Sur un élément HTML (hors input), il me semble effectivement qu'on attendrait plutot dispatchEvent, donc a priori décider de l'utiliser dans ta seconde version était tout sauf une bidouille

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 657
    Points
    44 657

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appeler une methode d'un Objet C# à partir du Xaml suite à un click
    Par Aquatiques dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 14/06/2008, 14h37
  2. Utilisation methode click()
    Par saadnames dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 11/06/2008, 15h17
  3. Réponses: 4
    Dernier message: 28/04/2007, 14h50
  4. [c#] Evenement click droit - methode ???
    Par Arvulis dans le forum Windows Forms
    Réponses: 3
    Dernier message: 22/05/2006, 07h46
  5. Composant et methode click...
    Par zitoune92 dans le forum Composants VCL
    Réponses: 9
    Dernier message: 14/04/2006, 13h24

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