jQuery中Javascript中的等效鼠标方向检测函数

jQuery中Javascript中的等效鼠标方向检测函数,javascript,detect,mousemove,direction,Javascript,Detect,Mousemove,Direction,如何将鼠标方向检测转换为纯JavaScript 关于我的逻辑问题:保持变量中的第一个坐标,然后重复比较当前坐标和前一个坐标。这是这种检测的最佳逻辑吗 (函数($){ var选项={}; var-oldx=0; var方向=”; var stop_timeout=false; var停止检查时间=150; $.mousedirection=函数(opts){ var默认值={}; 选项=$.extend(默认值,选项); $(文档).bind(“mousemove”,函数(e){ var act

如何将鼠标方向检测转换为纯JavaScript

关于我的逻辑问题:保持变量中的第一个坐标,然后重复比较当前坐标和前一个坐标。这是这种检测的最佳逻辑吗

(函数($){
var选项={};
var-oldx=0;
var方向=”;
var stop_timeout=false;
var停止检查时间=150;
$.mousedirection=函数(opts){
var默认值={};
选项=$.extend(默认值,选项);
$(文档).bind(“mousemove”,函数(e){
var activeElement=e.target | | e.srceelement;
如果(e.pageX>oldx){
direction=“right”;
}否则,如果(e.pageX
(function ($) {
var options = {};
var oldx = 0;
var direction = "";
var stop_timeout = false;
var stop_check_time = 150;
$.mousedirection = function (opts) {
    var defaults = {};
    options = $.extend(defaults, opts);
    $(document).bind("mousemove", function (e) {
        var activeElement = e.target || e.srcElement;
        if (e.pageX > oldx) {
            direction = "right";
        } else if (e.pageX < oldx) {
            direction = "left";
        }

        clearTimeout(stop_timeout);
        stop_timeout = setTimeout(function () {
            direction = "stop";
            $(activeElement).trigger(direction);
            $(activeElement).trigger({
                type: "mousedirection",
                direction: direction
            });
        }, stop_check_time);

        $(activeElement).trigger(direction);
        $(activeElement).trigger({
            type: "mousedirection",
            direction: direction
        });
        oldx = e.pageX;
    });
}
})(jQuery)

$(function () {
$.mousedirection();
$(".container").bind("mousedirection", function (e) {
    $(this).html("Mouse Direction: <b>" + e.direction + "</b>");
});
});