2011-10-03 82 views
1

我一直在对jQuery附加tooltipsy进行更改,以便锁定鼠标。如何获得tooltipsy随鼠标移动

要做到这一点是一件简单的事情,您只需将showEvent改为'mousemove',因为这是show事件,每次移动鼠标时都必须重做整个tooltipsy函数对于你移动的每一个像素,所以这个盒子不能跟上鼠标的位置。

因为滞后框,鼠标离开一个问题的同时,包装盒通常不正确地隐藏在鼠标离开(因为该功能,每个像素可以运行你的鼠标移动,所以它仍然计算你鼠标移开后)

这个问题通常很容易解决。你所要做的就是分开显示隐藏,并进入三个不同的事件。 (分别为mouseenter,mouseleave和mousemove),但要让它在tooltipsy的环境下工作是一件非常复杂的事情。

这里是例子: http://jsfiddle.net/MarkKramer/HwpEs/2/

注意如何在第三次DIV我得到了它的跟随光标,但它使用鼠标移动作为showEvent的时候,确实鼠标移动只能用于获取的坐标工具提示。

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

更新:我试着把如果在一个鼠标移动,这将只是功能与变量的作用域食堂工作alignTo =光标。

回答

2

该插件似乎是方式如果您想要基本的工具提示行为太复杂。

对于这样的一个提示的代码非常简单:

$('#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(); 
}); 

如果你想有一个现场演示,这里亚去:http://jsfiddle.net/DR4Wv/6/

+0

这仅仅是一个示范,这提示程序是完美的东西我正在使用它。我没有要求提供工具提示建议,我问如何让这个对齐到光标。 –

+0

嗯,我不打算修复那个插件,因为这对我来说太复杂了。抱歉... – Blender