将工具提示保留在浏览器窗口中? (不使用插件)

时间:2010-03-04 18:24:15

标签: jquery tooltip

我的工具提示码如下:

HTML / CSS

a.tooltip span
{
    display: none; 
    padding: 5px; 
    border: 1px solid #000;
    background: #999; 
    position: absolute; 
    color: #fff;
    text-align: left;
}

<a href="#" class="tooltip">[Help]<span>This is the tooltip</span></a>

jQuery的:

 $('a.tooltip').hover(
        function(e) {
            $(this).children('span')
                .css('display', 'block')
                .css('width', '300px')
                .css('left', e.pageX + 10)
                .css('top', e.pageY + 10).show();
        },
        function() {
            $(this).children('span').hide();
        }
    ).click(function() {
        return false;
});

这将显示位于鼠标位置+ 10(X和Y)的工具提示,但是当浏览器底部有一个工具提示并且它足够大时(我可以使用一些大的工具提示) t),工具提示将延伸到浏览器窗口,使其难以查看或滚动到。如何检查工具提示是否会延伸到浏览器窗口,然后相应地移动它?

1 个答案:

答案 0 :(得分:2)

不是你的问题的答案,但为什么不使用已经存在的优秀jQuery工具提示插件?我最喜欢的是jQuery ToolsThis example显示了一个动态放置的实现,它基于它与视口边缘的距离。