2

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

在第一次点击 element 之后$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
});
4

1 回答 1

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标签的使用。如果您不打算链接到任何内容,则没有理由使用该标签。

于 2012-08-06T23:00:03.637 回答