2012-09-08 54 views
6

我已经通过数据创建了一个下拉列表酥料饼属性:Twitter-bootstrap:如何检查popover是否已经显示?

<select id="timezone_dropdown" data-content="This is the timezone" rel="popover" data-placement="bottom" data-original-title="Time Zone"> 

每当我点击一个链接按钮,我想展现酥料饼漂浮在下拉列表中。

<a class="btn timezone_help" href="#">Help</a> 

在javascript中我也这样定义它:

$(document).ready(function() { 
    $('.timezone_help').click(show_timezone_help);  
}) 

function show_timezone_help(event){ 
    event.preventDefault(); 
    $('#timezone_dropdown').popover('show'); 
} 

这做这项工作,但是当我再次点击该按钮,它仍然在那里停留。有没有办法检查它是否已经打开并将其隐藏在函数中,还是有更好的方法?

回答

7

使用.popover('toggle')

function show_timezone_help(event){ 
    event.preventDefault(); 
    $('#timezone_dropdown').popover('toggle'); 
}​ 

和属性data-trigger="manual"添加到您的下拉列表。

DEMO

+0

对不起,但有一个问题。请继续您的DEMO并点击帮助。弹出窗口出现。再次点击帮助消失。现在点击下拉菜单。弹出窗口再次出现。很混乱。这是什么造成的? +1为你的努力,但我不得不现在回答这个问题,因为看起来'toggle'可能有问题。谢谢 – Houman

+0

@Kave:嗨,试试这个小提琴:http://jsfiddle.net/j2UVP/。请注意,我还将'data-trigger =“manual”'添加到了您的下拉列表的HTML中。 –

+0

完美。简单完美。 :) – Houman