tava sem nada pra fazer, resolvi me aventurar nesse script, sou fraco em matemática, então fiz o esqueleto, mas nada impede de vocês aprimorarem e corrigir os bugs.
Espera que seja útil a alguém um dia
- Código:
/*
autor: joelson0007
to: jscript.forumeiros.com
*/
var r = 0,loc,calc,loc2;
// somente para desabilitar o menu contexto
// quando o mouse é arrastado
function _disableContext() {
window.oncontextmenu = function (event) {
event.preventDefault();event.stopPropagation();
return false;
};
}
// pegar a posição do mouse quando o botão direito
// e apertado
window.addEventListener("mousedown", function (e) {
switch (e.which) {case 3:loc = e.pageX; r = 0; break;}
}, false);
// colocar a variável r = 1 para indicar que o
// mouse está sendo arrastado
window.addEventListener("mousemove", function (e) {
switch (e.which) {case 3: r = 1; break;}
}, false);
// função para calcular quando o mouse e solto
// a distancia que ele percorreu e o sentido
mouseEvtOnGesture = function(r,l){
window.addEventListener("mouseup", function (e) {
switch (e.which) {
case 3:
loc2 = e.pageX;
var dist = 100;
if (r){calc = loc2 - loc;if (calc < 0) {if (Math.abs(calc) > dist) {
_disableContext();r()}} else {
if (calc > dist) {_disableContext();l()}}}
break;}
}, false);
};
// exemplo usando a função
mouseEvtOnGesture(
function(){
alert('voce arrastou o mouse para esquerda')
},function(){
alert('voce arrastou o mouse para direita')
});
Espera que seja útil a alguém um dia