拦截所有鼠标事件

Jur*_*ion 3 html javascript jquery

我正在寻找一种方法来拦截网页上的所有鼠标事件(尤其是点击).

我的第一直觉是 $('body').click(....)

但是,如果为特定事件附加了任何其他处理程序,则不会捕获该事件.

把问题放在上下文中:我正在为我的网络应用程序编写一个"统计"模块.我们希望跟踪页面上的所有用户交互以进行调整.如果我们看到他们没有使用功能,我们将添加一个工具提示.

我有以下框架:

jQuery,Knockout和一个小框架"自制"

我想要的是一个用鼠标位置每次点击调用的函数.

Nic*_*ick 6

尝试这样的事情(没有jQuery):

    var eventCount = 0;
    var eventProperty = [];

    var TrackMouse = function (mouseEvent) {
        eventProperty[eventCount++] = {
            id: mouseEvent.toElement.id,
            type: 'mouse',
            ts: Date.now(),
            x: mouseEvent.x,
            y: mouseEvent.y
        };

        console.log("Element id: " + eventProperty[eventCount - 1].id + ", X: " + mouseEvent.x + ", Y: " + mouseEvent.y + "\n");
    };

    document.addEventListener('click', TrackMouse);
Run Code Online (Sandbox Code Playgroud)