remember/sims/splash/Mouse.js

60 lines
1.3 KiB
JavaScript
Raw Normal View History

2018-10-22 20:40:55 +00:00
(function(exports){
// Singleton
var Mouse = {
x: undefined,
y: undefined,
pressed: false,
update: function(){
if(Mouse.x!==undefined && Mouse.y!==undefined){
if(Mouse.lastX===undefined) Mouse.lastX=Mouse.x;
if(Mouse.lastY===undefined) Mouse.lastY=Mouse.y;
Mouse.velX = Mouse.x-Mouse.lastX;
Mouse.velY = Mouse.y-Mouse.lastY;
Mouse.lastX=Mouse.x;
Mouse.lastY=Mouse.y;
}
}
};
exports.Mouse = Mouse;
// Event Handling
var onMouseMove,onTouchMove;
document.body.addEventListener("mousedown",function(event){
Mouse.pressed = true;
onMouseMove(event);
},false);
document.body.addEventListener("mouseup",function(event){
Mouse.pressed = false;
},false);
document.body.addEventListener("mousemove",onMouseMove = function(event){
Mouse.x = event.pageX;
Mouse.y = event.pageY - window.pageYOffset;
},false);
document.body.addEventListener("touchstart",function(event){
Mouse.pressed = true;
onTouchMove(event);
},false);
document.body.addEventListener("touchend",function(event){
Mouse.pressed = false;
},false);
document.body.addEventListener("touchmove",onTouchMove = function(event){
Mouse.x = event.changedTouches[0].clientX;
Mouse.y = event.changedTouches[0].clientY - window.pageYOffset;
2018-10-24 14:11:40 +00:00
//event.preventDefault();
2018-10-22 20:40:55 +00:00
},false);
})(window);