jQuery clue提示:在鼠标悬停时显示/隐藏,在点击时粘贴

时间:2011-09-27 19:13:05

标签: jquery-plugins javascript-events jquery cluetip

我正在使用cluetip插件和jQuery FullCalendar来显示非常有效的事件详细信息。我想在每个描述中都有一个用户可以单击的链接。但我不希望用户必须点击每个事件来显示信息。

我可以使用任何选项来显示鼠标悬停上的线索提示,在鼠标移动时隐藏它,但在点击时使其粘滞?还没有找到一个,但我想这会产生非常直观的行为......

3 个答案:

答案 0 :(得分:1)

已更新至工作示例:

<a class="title" href="#" title="Test tooltip 1">test 1</a>

$(document).ready(function () {
    var keepTooltip = false;

    $('a.title').cluetip({ splitTitle: '|', sticky: true })
                .mouseout(function () {
                    if (!keepTooltip) {
                        $('#cluetip').hide();
                    }
                });

    $('a.title').click(function (e) {
        e.preventDefault();
        keepTooltip = true;
    });
});

答案 1 :(得分:0)

(我不确定你是否尝试过这个,或者这会有所帮助)

在cluetip上有一个'悬停'激活:

  

激活:'悬停',//设置为'点击'以强制用户点击   显示线索提示

http://plugins.learningjquery.com/cluetip/#options

答案 2 :(得分:0)

终于找到了解决问题的有效方法 - 通过创建2个cluetips ...'mouseout'解决方案没有按预期工作: - /

var stickyTooltip = false;
var tooltipClass;
// ...
$(eventElement).attr('title', event.title+'\n'+info).cluetip({
    splitTitle: '\n',
    sticky: true,
    activation: 'click',
    closeText: 'Close',
    onShow: function(ct, c) {
        stickyTooltip = true;
        $('#clickInfo').hide(); // #clickInfo is a span that tells user how to fix tooltips
        tooltipClass = $(ct).attr('class');
    },
    onHide: function(ct, ci) {
        stickyTooltip = false;
    }
}).cluetip({
    splitTitle: '\n',
    sticky: false,
    activation: 'hover',
    onActivate: function(e) {
        return !stickyTooltip;
    },
    onShow: function(ct, c) {
        $('#clickInfo').show();
        stickyTooltip = false;
    },
    onHide: function(ct, ci) {
        $(ct).attr('class', tooltipClass).toggle(stickyTooltip);
    }
});