Jquery如何在鼠标距离元素x距离时触发函数
Jquery how to fire function when mouse is x distance from an element?
我想有一个函数运行时,鼠标是X距离的元素。
我假设鼠标移动事件应该被移动,但由于元素可能并不总是在同一个地方,我不确定如何获得相对于元素的鼠标位置?
有没有人有类似的例子?
var mX, mY, distance;
$element = $('#YourElementID');
function calculateDistance(elem, mouseX, mouseY) {
return Math.floor(Math.sqrt(Math.pow(mouseX - (elem.offset().left+(elem.width()/2)), 2) + Math.pow(mouseY - (elem.offset().top+(elem.height()/2)), 2)));
}
$(document).mousemove(function(e) {
mX = e.pageX;
mY = e.pageY;
distance = calculateDistance($element, mX, mY);
// do your stuff with distance
});
你需要绑定到mousemove
事件,将元素角的坐标存储在全局变量中,并继续检查鼠标移动的每个像素,直到当前鼠标位置和对象坐标之间的向量长度为x,然后触发你绑定一些函数的自定义事件。
我不知道有一个插件已经这样做了,所以一定要发布一个链接到你在这里写的插件。:)
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 将函数的上下文应用于javascript变量
- 如何在JavaScript中将字符串转换为函数引用
- 用嵌套函数和默认函数定义函数
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 无法导出函数expressjs/requestjs中的变量
- 函数参数中的数据与指定变量之间的任何性能差异
- JQuery合并了keyup和focusout两个函数
- ES6构造函数返回基类的实例
- 监视函数从服务返回不起作用,但作用域函数起作用
- 我可以在json对象中添加一个函数吗
- AngularJS:我可以跳过函数参数回调吗
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- jquery点击函数select&取消选择
- ajax post请求调用时,为什么函数计算两个元素之间的距离不起作用
- javascript函数与sql server STD距离计算的距离差异
- Jquery如何在鼠标距离元素x距离时触发函数
- 返回距离函数使用谷歌地图距离矩阵
- AngularJS-orderBy距离函数