jquery工具提示/移动鼠标移动/工具提示鼠标位置

时间:2011-04-26 18:54:32

标签: jquery plugins tooltip

jQuery Tools tooltip对我来说没问题!

但是我希望它随着鼠标移动而移动(相对于鼠标位置的工具提示)。我怎样才能做到这一点?或者有这样的插件吗?

5 个答案:

答案 0 :(得分:16)

jQuery UI现在包含{1.9}版本的.tooltip()小部件,它现在提供选项track: true以使工具提示跟随鼠标。只需在初始化窗口小部件时将其指定为选项:

$( document ).tooltip({
    track: true
});

在此处查看此操作:http://jqueryui.com/tooltip/#tracking

如果您已经在使用jQuery UI并且不想包含其他库,那么这非常有用。有关此小部件的更多详细信息,请查看API:http://api.jqueryui.com/tooltip/

答案 1 :(得分:1)

我使用jQuery Tools工具提示

$('#selector').mousemove(function(e) { 
  $('.tooltip').css('left', e.pageX + 5).css('top', e.pageY - 25).css('display', 'block');
})

其中.tooltip是css类

答案 2 :(得分:0)

我不认为可以使用jQuery TOOLS工具提示插件。

Bassistance Tooltip plugin确实支持你想要的东西。使用track: true,如this demo

$('#yahoo a').tooltip({ 
    track: true, 
    delay: 0, 
    showURL: false, 
    showBody: " - ", 
    fade: 250 
});

如果您不喜欢该插件,qTip2也支持鼠标跟踪。请参阅this demo(相当于jsFiddle here)。

$('#demo-mouse').qtip({
    content: 'I position myself at the current mouse position',
    position: {
        my: 'top left',
        target: 'mouse',
        viewport: $(window), // Keep it on-screen at all times if possible
        adjust: {
            x: 10,  y: 10
        }
    },
    hide: {
        fixed: true // Helps to prevent the tooltip from hiding ocassionally when tracking!
    },
    style: 'ui-tooltip-shadow'
});

答案 3 :(得分:0)

<强> HTML

<div id="tooltipWindow" class="tooltipContainer">
    <div></div>
</div>

CSS (根据需要添加样式,在下面的脚本中我还将附加元素的类添加到工具提示div中)

<style>
    .tooltipContainer {
        position: fixed;
        height: auto;
        width: auto;
        background: ghostwhite;
        padding: 10px;
    }
</style>

JAVASCRIPT (jQuery,别忘了包含jQuery库,我也添加了include标记)

<script src="https://code.jquery.com/ui/1.10.4/jquery-ui.min.js" type="text/javascript"></script>
<script>
    //Following Tooltip
    $('.elementClassName').mousemove(function(e) {
        if ($(this).attr('title') != "") {
            $('#tooltipWindow div').html($(this).attr('title'));
            $('#tooltipWindow').css('left', e.clientX + 10).css('top', e.clientY + 10).addClass($(this).attr('class'));
            $('#tooltipWindow').show();
        }
    });
    $('.elementClassName').mouseleave(function (e) {
        $('#tooltipWindow').hide();
        });
    }

    //Non Following Tooltip
    $('.elementClassName').hover(function(e) {
        if ($(this).attr('title') != "") {
            $('#tooltipWindow div').html($(this).attr('title'));
            $('#tooltipWindow').css('left', e.clientX + 10).css('top', e.clientY + 10).addClass($(this).attr('class'));
            $('#tooltipWindow').show();
        }
    },function (e) {
        $('#tooltipWindow').hide();
        });
    }

</script>

答案 4 :(得分:0)

$(function(){ window.onmousemove = function (e) { var tooltips = $('div.ui-tooltip'); var x = (e.clientX + 10) + 'px', y = (e.clientY + 10) + 'px'; for (var i = 0; i < tooltips.length; i++) { tooltips[i].style.top = y; tooltips[i].style.left = x; } }; });

如果你使用jquery-ui工具提示,那个代码片段就可以了!