Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema con keyup conla teclas F y alt -mootools-

Estas en el tema de Problema con keyup conla teclas F y alt -mootools- en el foro de Frameworks JS en Foros del Web. Bunas gente tengo un problemita, he intentado usar el plugin Elements.Events.Pseudos:keys de mootools pero tengo un bardo con la tecla alt; por ejemplo Código: myElement.addEvent('keydown:keys(alt+a)', ...
  #1 (permalink)  
Antiguo 28/10/2011, 13:12
 
Fecha de Ingreso: julio-2009
Mensajes: 42
Antigüedad: 15 años, 4 meses
Puntos: 3
Problema con keyup conla teclas F y alt -mootools-

Bunas gente tengo un problemita, he intentado usar el plugin Elements.Events.Pseudos:keys de mootools pero tengo un bardo con la tecla alt;

por ejemplo
Código:
myElement.addEvent('keydown:keys(alt+a)', function(){
    alert('You pressed the following keys: alt  and a');
});
el alert sale cuando presionas alt+a ... la cuestion es que luego de la primer ejecucion la funcion se sigue ejecutando cada vez que presionas la tecla a -sin el alt-

luego de meterme un poco en el codigo decidi escribir mi propia versión del plugin

Código:
(function(){

var stack=[];
var map;
var _this;

hotKeys=new Class
({
	initialize:function(args)
	{
		if(_this) return; //single instance
		
		map = args || {};
		_this=this;

		$(document).addEvent('keydown',this.add);
		$(document).addEvent('keyup',this.clear);
		
	},
	
	add:function(e)
	{
		e.stop();
		if(stack.contains(e.key))return
		stack.push(e.key);

		if(map[_this.getkey()])
		{
			map[keys]();
			return ;
		}
		
		stack.push('+');
	
	},
	
	clear:function(e)
	{
		e.stop();
		for(var i=stack.length;i--;)	
		if (stack[i]===e.key){stack.splice(i,2);}
		
	},
	
	getkey:function()
	{
		keys='';
		stack.each(function(i)
		{
			keys+=i;
		})
		
		return keys;
	}

})

})();


//aqui creamos nuestro listener

window.addEvent('domready', function()
{

	new hotKeys(
	{
		'control+alt+n':function(){alert('control+alt+n');},
		'control+alt+g':function(){alert('control+alt+g');}
	});
	
});

Aquí me encontré otra vez con el mismo comportamiento... pero esta vez me quedo clara la razón, cuando se presiona y sostiene una combinación de teclas del estilo alt+a y luego se sueltan el evento keyup no se ejecuta para la tecla alt y ninguna de las F1 .. F12 ...

Alguna idea de como resolver esto??? nota: en chrome funciona....

Etiquetas: events, javascript, keyup, mootools, altas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:27.