0

请看下面的代码... 代码的目的是在右键单击屏幕时显示一个浮动菜单,而在左键单击屏幕时菜单应该隐藏。以下内容与 IE 和 Chrome 完美配合,但在 Firefox 中失败。我尝试用萤火虫进行调试,完全没有任何积极意义。

$(document).ready(function () {
    document.onmousedown = onMouseClick;
}

function onMouseDown(ev) {

    document.oncontextmenu = onClickRightMouseButton; //to hide default menu on right click

    if (ev.which == 1) {
        console.log('1');
    }

    if (ev.which == 2) {
        console.log('2');
    }

    if (ev.which == 3) {
        var xPos = ev.clientX;
        var yPos = ev.clientY;

        document.onmousedown = onMouseClick;
        showFloatingMenu(xPos, yPos);
    }

    function onMouseClick(e) {
        if (e.which == 1) {
            if (!(e.clientX >= xPos && e.clientX <= (xPos + 200) && e.clientY >= yPos && e.clientY <= (yPos + 50))) { //50x200 is the floating menu diamension
                hideFloatingMenu();
            }
        }
    }

}
}
4

0 回答 0