关闭 Bootstrap 2 个弹出框

Closing Bootstrap 2 popover

我有 Bootstrap 2 个显示 SVG 的应用程序,当我单击任何 path 元素时,我会按预期获得 Bootstrap 2 弹出窗口。

$('body').popover
    'selector': 'path'
    'container': 'body'
    'html': true
    'width': '360px'
    'title': () ->
        item = LOOKUP[this.id]
        '<a href="' + '/graphs.horizon/port/'+item['device']+'/'+item['physical_port'] + '">' + item['device'] + '/' + item['physical_port'] + '</a>' + '<button type="button" id="close" class="close">&times;</button>'
    'content': () ->
        this.id
        item = LOOKUP[this.id]
        url = '/graphs.horizon/utilisation/'+item['device']+'/'+item['physical_port']+'?layout=naked'
        '<iframe src="'+url+'" frameBorder="0" width="360px" height="180px"></iframe>'
    'trigger': 'click'
    'placement': 'right'

所以我天真地添加了一个通用的点击事件,如下所示:

$(document).on 'click', '.popover .close', () ->
  console.log 'hello %o', $(this).parents('.popover')
  $(this).parents('.popover').popover('hide')

不过,好像不行。我收到调试问候消息,但是 .popover('hide') 除了打印调试消息外似乎什么也没做。

在控制台中,我也尝试了 $('.popover').popover('hide'),这也没有做任何事情,只是使用选择器显示了我期望的 div 对象列表。

这有效:

$(document).on 'click', '.popover .close', () ->
  console.log 'hello %o', $(this).parents('.popover')
  $(this).parents('.popover').hide()