Partage
  • Partager sur Facebook
  • Partager sur Twitter

Capture de touches sous Internet explorer.

Sujet résolu
    3 juillet 2010 à 17:27:42

    Bonjour,

    J'ai un petit soucis, je me sers de touches du clavier pour me déplacer sur mon site. Seul petit problème, internet explorer .... J'y arrive sur firefox, google chrome, opéra.


    Je joins un de mes fichiers gérant cela. Si vous avez une idée, ou si ce que je demande est impossible comme le pense mon pote qui a écris ce code.
    nobash = 0;
    keypress = 0;
    var faceChar;
    var needCleanMenu = 0;
    var dispo_keyboard = 1;
    
    function ejs_code_clavier(keyStroke)
    {
    	
        if(document.getElementById('onmap'))
    		onmap = 1;
    	else
    		onmap = 0;
    		
        ejs_code_eventChooser = (!document.all) ? keyStroke.which : event.keyCode;
        ejs_code_which = String.fromCharCode(ejs_code_eventChooser).toLowerCase();	
        
    	if((onmap == 1 && isSendMessage == 0 && can_move == 1) || ejs_code_eventChooser == 13)
    	{
    	    switch(ejs_code_eventChooser)
    	    {
    	    	case 83:
    	    		move(1);
    	    		faceChar = 1;
    	    	break;
    	       	case 65:
    	    		move(2);
    	    		faceChar = 2;
    	    	break;
    	    	case 87:
    	    		move(3);
    	    		faceChar = 3;
    	    	break;
    	    	case 68:
    	    		move(4);
    	    		faceChar = 4;
    	    	break;
    	    	case 67:
    	    		move(5);
    	    		faceChar = 1;
    	    	break;
    	    	case 90:
    	    		move(6);
    	    		faceChar = 1;
    	    	break;
    	    	case 69:
    	    		move(7);
    	    		faceChar = 3;
    	    	break;
    	    	case 81:
    	    		move(8);
    	    		faceChar = 3;
    	    	break;
    	    	case 82:
    	    		HTTPTargetCall('pageig/header/hidden.php?shortcut=R','hiddenDiv');
    	    		HTTPTargetCall('pageig/header/shortcuts.php?refresh=1','shortcuts');
    	    	break;
    	    	case 84:
    	    		HTTPTargetCall('pageig/header/hidden.php?shortcut=T','hiddenDiv');
    	    		HTTPTargetCall('pageig/header/shortcuts.php?refresh=1','shortcuts');
    	    	break;
    	    	// bouton entrer
    	    	case 13:
    	    		if(document.getElementById('tchat_zoom_value'))
    					var zoom = 1;
    				else
    					var zoom = 0;
    					
    				var canal = document.getElementById('canal').innerHTML;
    				sendMessage(canal,zoom);removeIsSendingMessage();
    	    	break;
    	    	
    	    	
    	    }
    	    keypress = ejs_code_eventChooser;
    	}
    }
    
    
    document.onkeydown = ejs_code_clavier;
        
      
    function removeKeyPress()
    {
    	keypress = 0;
    }  
        
    document.onkeyup = removeKeyPress;
    
    • Partager sur Facebook
    • Partager sur Twitter
      3 juillet 2010 à 17:31:33

      On voit que c'est du ejs :o

      function ejs_code_clavier(keyStroke)
      {
          keyStroke = keyStroke || window.event;
          
          if(document.getElementById('onmap'))
      		onmap = 1;
      	else
      		onmap = 0;
      		
          ejs_code_eventChooser = keyStroke.keyCode;
      
      • Partager sur Facebook
      • Partager sur Twitter
        3 juillet 2010 à 18:56:51

        J'ai cherché ce qu'étais du ejs, et je suis tombé sur un site qui permettait de récupérer une touche même sous IE, merci.

        Edit : j'arrive à récupérer ma touche, mais je n'arrive pas à la comparer à une valeur du clavier. Je rentre dans mon switch, mais après rien, peut importe la touche du clavier que je presse.

        Edit2 : j'ai finalement réussi, vais traiter mon pote boulet.
        • Partager sur Facebook
        • Partager sur Twitter
          3 juillet 2010 à 21:34:54

          Citation : xrorox

          Edit2 : j'ai finalement réussi, vais traiter mon pote boulet.




          Nieh ? ejs = editeurjavascript, un site plutôt nul de JavaScript.

          Si t'as résolu, met le sujet en résolu.
          • Partager sur Facebook
          • Partager sur Twitter
            4 juillet 2010 à 16:13:23

            Après je ne connais pas le niveau du site en question, ce n'est pas moi qui ait pris le code. Tout ce que je sais, c'est que j'ai résolu mon problème, en déclarant la variable qui faisait planter internet explorer.
            • Partager sur Facebook
            • Partager sur Twitter

            Capture de touches sous Internet explorer.

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown