Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用鼠标移动工具提示_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何使用鼠标移动工具提示

Javascript 如何使用鼠标移动工具提示,javascript,jquery,html,Javascript,Jquery,Html,我一直在对jQuery附加工具进行修改,以便它锁定鼠标 要让它完成这项任务很简单,您所要做的就是将showEvent更改为“mousemove”,但是,因为这是show事件,每次移动鼠标时,它都必须为您移动的每个像素重新执行整个tooltipsy功能,因此框无法正确跟上鼠标 此外,由于滞后框和mouseleave存在问题,框通常不会正确隐藏在mouseleave上(因为要为鼠标移动的每个像素运行函数,所以在鼠标移出后仍会计算) 这个问题通常很容易解决。你所要做的就是把表演分成三个不同的部分。(分

我一直在对jQuery附加工具进行修改,以便它锁定鼠标

要让它完成这项任务很简单,您所要做的就是将showEvent更改为“mousemove”,但是,因为这是show事件,每次移动鼠标时,它都必须为您移动的每个像素重新执行整个tooltipsy功能,因此框无法正确跟上鼠标

此外,由于滞后框和mouseleave存在问题,框通常不会正确隐藏在mouseleave上(因为要为鼠标移动的每个像素运行函数,所以在鼠标移出后仍会计算)

这个问题通常很容易解决。你所要做的就是把表演分成三个不同的部分。(分别是mouseenter、mouseleave和mousemove)然而,在工具提示的上下文中实现这一点要复杂得多

以下是一个例子:

注意,在第三个div中,我让它跟随光标,但它使用mousemove作为showEvent,而真正的mousemove应该只用于获取工具提示的坐标

如果有人能解决这个问题,我将非常感激

更新:我尝试将if alignTo=cursor放在鼠标移动中,除了函数会干扰变量的作用域之外,该功能还可以工作。

如果您想要基本的工具提示行为,该插件似乎太复杂了

这样的工具提示代码非常简单:

$('#tooltip-container').mousemove(function(e) {
    $('#tooltip').css('left', e.pageX + 20);
    $('#tooltip').css('top', e.pageY + 20);
});


$('#tooltip-container').mouseleave(function() {
    $('#tooltip').hide();
});

$('#tooltip-container').mouseenter(function() {
    $('#tooltip').show();
});

如果你想要一个现场演示,那就来吧:

这只是一个演示,这个工具提示程序非常适合我使用它的目的。我没有要求提供工具提示建议,我问的是如何使这个插件与光标对齐。我不打算修复那个插件,因为它太复杂了,我无法查看。很抱歉