如何使工具保持停留,以便可以点击其中的链接

时间:2012-05-24 10:04:40

标签: jquery jquery-plugins simpletip

我有jQuery插件Tooltipsy来为链接生成工具提示。在这个工具提示中,我有其他相关对象的链接。我希望它弹出刚好在初始链接上方,如果我将鼠标移动到它上面点击链接就会停​​留。这可能吗?有谁知道怎么做?

3 个答案:

答案 0 :(得分:2)

我没有设法让它保持打开状态,不能再等了,所以我改为另一个名为simpletip的工具提示插件,它提供了我需要的功能。

Simpletip无法从链接中获取title属性,因此这是我用来实现的代码。编辑:我更改了代码以获取数据标题(符合HTML5)而不是标题,这样我就不必阻止默认显示的所有标题:

$(".order_tooltip").simpletip({
    fixed: true,
    position: 'top',
    onBeforeShow: function(){
        this.update(this.getParent().data('title'));
    }
});

答案 1 :(得分:0)

您可以在工具提示中放置关闭按钮,并在点击关闭按钮时隐藏工具提示。

可以按照http://tooltipsy.com/methods.html#method-hide

中的说明调用工具提示中的隐藏功能

答案 2 :(得分:0)

要直接回答您的原始问题,这对我有用:

var hoverHand = false;

    $('.hastip').tooltipsy({
            show: function (e, $el) {
                $el.hover( function() { 
                    hoverHand = true;
                }, function() {
                    hoverHand = false;
                });
                $el.fadeIn(100);
            },
            hide: function (e, $el) {
                var tooltipCloserInterval = setInterval(function(){
                    if (hoverHand == false) {
                        $el.fadeOut(100);
                        $el.off( "mouseenter mouseleave" );
                        clearInterval(tooltipCloserInterval);
                    }
                }, 500);
            }
        });

基本上,您使用setInterval为用户提供500ms的移动鼠标到工具提示。 500ms后检查鼠标是否仍在工具提示上,如果不是,则关闭工具提示。