如何“重置”点击事件(使用qtip2)?

时间:2012-08-06 22:11:53

标签: javascript jquery qtip2 dajax

我对点击事件和qtip2有一点疑问。

首次点击元素$j('a[href^="/i/"]')后,当我再次移动它时,会出现气泡。我希望每次点击元素时都会出现气泡。

我的代码:

$j('a[href^="/i/"]').click(function(event) { 
        event.preventDefault(); 
        $j(this).qtip({
            content: {
                title: {
                    text: title_qtip,
                    button: true,
                },
                text: text_qtip,                
            },
            show: { 
                //  event: false,   <-- doesn't work
                solo: true,
                ready: true 
            },
            hide: false,
        });   
       // $j('a[href^="/i/"]').unbind('click');    <-- doesn't work
       // $j('a[href^="/i/"]').unbind('onmouseover').unbind('onmouseout');   <-- doesn't work
});

1 个答案:

答案 0 :(得分:1)

首先,不要在事件处理程序中声明你的qTip2函数。每次单击对象时,您都不希望声明新的qTip。您所要做的就是更改show函数中的事件行。它应该是:

$j(document).ready(function(){

     $j('//selector').qtip({
        content: {
            title: {
                text: title_qtip,
                button: true,
            },
            text: text_qtip,                
        },
        show: { 
            event: 'click',   
            solo: true,
            ready: true 
        },
        hide: false,
    });   
}

单击选择器($j(//your selector))时会触发工具提示。

这是一个更新的小提琴:http://jsfiddle.net/LJwLh/1101/

您的问题似乎是使用a标记。如果您不想链接任何内容,则没有理由使用该标记。