Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569

    Combinazioni di tasti help

    Certamente quasi tutti voi conoscete il Konami Code.
    A me serve una funzione JavaScript che lo esegue;
    Ma le combinazioni di tasti che vorrei sono diverse.
    Es.: SU, SU, GIU DESTRA SINISTRA Z X INVIO

    Dovrei anche fare in modo che questo debba essere digitato velocemente, e un setTimeout risolverebbe;

    Potete aiutarmi?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non puoi far simulare al javascript la reale pressione di uno o piu' tasti: sarebbe come fare a meno dell'utente... per non voler sospettare un imbroglio

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Con tutto il rispetto, br1, è possibilissimo invece..
    Basta andare quì per vedere che JavaScript può controllarli...

    konamicodesites.com

    Per entrarci basta digitare SU SU GIU GIU SINISTRA DESTRA SINISTRA DESTRA B A

    Non sono stato in grado di modificare lo script e vorrei un aiuto, per questo ho postato questa discussione...

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Forse, per il momento il sito da un errore lato server, attendiamo per verificare, in oltre tu da quanto ho capito vuoi che sia il javascript a simulare la pressione del tasto e questa parte che non è possibile x js come sosteneva Bruno e che condivido.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    No, Vorrei che sia l'utente a premere i tasti, mi sembra ovvio scusate
    Non riesco a modificare per bene il codice...
    E o chiesto a voi....

  6. #6
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    il setTimeout perché l'utente deve essere veloce nel premere i tasti.

  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Perdona, invece che doverci impiegare noi mezz'ore a scaricare ed esaminare gli script incriminati, non potrsti postarli tu?

    grazie
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  8. #8
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Questo è il codice che utilizza Google.

    codice:
    /*
    	* Konami-JS ~ 
    	* :: Now with support for touch events and multiple instances for 
    	* :: those situations that call for multiple easter eggs!
    	* Code: http://konami-js.googlecode.com/
    	* Examples: http://www.snaptortoise.com/konami-js
    	* Copyright (c) 2009 George Mandis (georgemandis.com, snaptortoise.com)
    	* Version: 1.3.2 (7/02/2010)
    	* Licensed under the GNU General Public License v3
    	* http://www.gnu.org/copyleft/gpl.html
    	* Tested in: Safari 4+, Google Chrome 4+, Firefox 3+, IE7+ and Mobile Safari 2.2.1
    */
    
    var Konami = function() {
    	var konami= {
    			addEvent:function ( obj, type, fn, ref_obj )
    			{
    				if (obj.addEventListener)
    					obj.addEventListener( type, fn, false );
    				else if (obj.attachEvent)
    				{
    					// IE
    					obj["e"+type+fn] = fn;
    					obj[type+fn] = function() { obj["e"+type+fn]( window.event,ref_obj ); }
    	
    					obj.attachEvent( "on"+type, obj[type+fn] );
    				}
    			},
    	        input:"",
    	        pattern:"3838404037393739666513",
    		/*pattern:"38384040373937396665",*/
    	        load: function(link) {	
    				
    				this.addEvent(document,"keydown", function(e,ref_obj) {											
    					if (ref_obj) konami = ref_obj; // IE
    					konami.input+= e ? e.keyCode : event.keyCode;
    					if (konami.input.length > konami.pattern.length) konami.input = konami.input.substr((konami.input.length - konami.pattern.length));
    					if (konami.input == konami.pattern) {
                        konami.code(link);
    					konami.input="";
                       	return;
                        }
                	},this);
               this.iphone.load(link)
    	                
    				},
    	        code: function(link) { window.location=link},
    	        iphone:{
    	                start_x:0,
    	                start_y:0,
    	                stop_x:0,
    	                stop_y:0,
    	                tap:false,
    	                capture:false,
    									orig_keys:"",
    	                keys:["UP","UP","DOWN","DOWN","LEFT","RIGHT","LEFT","RIGHT","TAP","TAP","TAP"],
    	                code: function(link) { konami.code(link);},
    	                load: function(link){
    										orig_keys = this.keys;
    	    							konami.addEvent(document,"touchmove",function(e){
    	                          if(e.touches.length == 1 && konami.iphone.capture==true){ 
    	                            var touch = e.touches[0]; 
    	                                konami.iphone.stop_x = touch.pageX;
    	                                konami.iphone.stop_y = touch.pageY;
    	                                konami.iphone.tap = false; 
    	                                konami.iphone.capture=false;
    	                                konami.iphone.check_direction();
    	                                }
    	                                });               
    	                        konami.addEvent(document,"touchend",function(evt){
    	                                if (konami.iphone.tap==true) konami.iphone.check_direction(link);           
    	                                },false);
    	                        konami.addEvent(document,"touchstart", function(evt){
    	                                konami.iphone.start_x = evt.changedTouches[0].pageX
    	                                konami.iphone.start_y = evt.changedTouches[0].pageY
    	                                konami.iphone.tap = true
    	                                konami.iphone.capture = true
    	                                });               
    	                                },
    	                check_direction: function(link){
    	                        x_magnitude = Math.abs(this.start_x-this.stop_x)
    	                        y_magnitude = Math.abs(this.start_y-this.stop_y)
    	                        x = ((this.start_x-this.stop_x) < 0) ? "RIGHT" : "LEFT";
    	                        y = ((this.start_y-this.stop_y) < 0) ? "DOWN" : "UP";
    	                        result = (x_magnitude > y_magnitude) ? x : y;
    	                        result = (this.tap==true) ? "TAP" : result;                     
    
    	                        if (result==this.keys[0]) this.keys = this.keys.slice(1,this.keys.length)
    	                        if (this.keys.length==0) { 
    														this.keys=this.orig_keys;
    														this.code(link)
    														}
    	                        }
    	                }
    	}
    	return konami;
    }
    Comunque ci sono riuscito modificando al variabile pattern:
    pattern:"3838404037393739666513" dato che contiene i codici dei tasti premuti.
    Me ne sono accorto perché 13 e 38 corrispondono a INVIO e SU...

    Grazie a tutti per l'aiuto

  9. #9
    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Documento senza titolo</title>
    <script language="javascript" type="text/javascript">
    var tastipremuti="";
    document.onkeypress=function tastopremuto(event){
    	if (window.event){
    		key = window.event.keyCode;
    	}else{
    		key = event.which;
    	}
    	tastipremuti+=key;
    	if (tastipremuti=="000000009897" || tastipremuti=="9897"){
    		document.getElementById('codice').style.display="none";
    		document.getElementById('contenuti').style.display="block";
    	}
    }
    </script>
    
    <style type="text/css">
    div#contenuti{
    	display:none;
    }
    </style>
    </head>
    
    <body>
    <div id="codice">
    Digita SU SU GIU GIU SINISTRA DESTRA SINISTRA DESTRA B A per vedere i contenuti
    </div>
    <div id="contenuti">
    <h1>Questi sono i contenuti</h1>
    
    
    lucavizzi.it</p>
    </div>
    </body>
    </html>
    testato su IE8 e Firefox,non tiene conto del tempo impiegato a premere i tasti.

  10. #10
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Sì a me serviva però uno script che controllasse anche quello;
    Quello di google l'ho trovato stamattina.
    Testato con: IE8, FFX 4.1b, Chrome 7, Flock e Opera...
    Solo su Amalya e Greenbrowser non ha funzionato

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.