关闭时重置工具提示

时间:2013-05-15 19:38:02

标签: jquery jquery-ui tooltip jquery-ui-tooltip

我正在使用jQuery UI的工具提示,最终,我正在尝试将工具提示重置为它的第一个初始状态。

由于似乎没有“重置”功能,任何想法我怎么能做到这一点?

到目前为止,我已尝试使用close回调函数,我可以重置工具提示,但工具提示不会关闭。 在使用close回调函数时,我在文档中找不到关于如何关闭工具提示的任何内容。

jsFiddle链接:http://jsfiddle.net/Handyman/mJMD5/

var $selector = $('div.content div.rounded_corners'),
    $timeout;

$selector.tooltip({
    items: 'a.detail',
    content: $loader,
    open: function(event, ui)
    {
        // test this with a timeout to find out what will happen if I use AJAX to bring in the content
        $timeout = setTimeout(function()
        {
            // replaces the loading image with this text, but changes the content for all tooltips, which is undesirable
            $selector.tooltip('option', 'content', 'sometimes you just have to wait a second');
        }, 2000);
    },
    close: function()
    {
        // reset the content back to the loading image
        $selector.tooltip('option', 'content', $loader);
        clearTimeout($timeout);

        // adding return true doesn't have any effect on if the tooltip closes or not
        return true;
    }
});

1 个答案:

答案 0 :(得分:1)

这是一个解决方案,您需要通过执行以下操作重新启动工具提示:

close: function()
{
    // reset the content back to the loading image
    $selector.tooltip('close').tooltip('destroy').attr('title','hello');     

    clearTimeout($timeout);
    fnAddToolTip(); 
    // adding return true doesn't have any effect on if the tooltip closes or not
    return true;
}

这是一个小提琴:http://jsfiddle.net/dwaddell/87wV3/

以下是添加到小提琴中的解决方案:http://jsfiddle.net/dwaddell/mJMD5/1/