设置鼠标位置值的最小/最大值

时间:2016-12-12 19:40:52

标签: javascript jquery

我在鼠标移动时有鼠标位置(x / y)...但我想知道x / y位置是否可以在某个最小值和最大值时停止改变值?

$this.mousemove(function(event) {
    x = event.pageX;
    y = event.pageY;
});

理想情况下,我想要变量xminxmax以及yminymax,并且只允许返回的值在两个最小值和最大值之内(比如说,在300到900之间)因此,当鼠标移动时,它会记录它的位置,但在300px和900px以外的任何地方都不会改变值。

可能的?

1 个答案:

答案 0 :(得分:1)

虽然你不能轻易地让它看起来像鼠标在一定范围内,你可以做你想要的,即返回真实的y位置,或者你可以的最大值。

试试此代码

$this.mousemove(function(event) {
    x = Math.max(
        Math.min(
            event.pageX, xmax
    ), xmin);
    y = Math.max(
        Math.min(
            event.pageX, ymax
    ), ymin);
});

这个想法是Math.max选择最小值或实际位置,以较大者为准。 Math.min恰恰相反。