【问题标题】:Twitter Bootstrap, show all popovers at one divTwitter Bootstrap,在一个 div 中显示所有弹出框
【发布时间】:2012-06-25 15:42:26
【问题描述】:

我尝试使用 Twitter Bootstrap 2.0 和它的 popover-plugin 实现以下目标,但几个小时后,我仍然无法弄清楚。

比方说,在我页面的左下角,我看到了一张显示一只鸟的图片。这只鸟应该“说话”每个弹出窗口,例如注册表的那些,应该出现在鸟的顶部。这可能吗?

为了更好地理解我创建了一个测试站点over here。如果您将鼠标悬停在注册字段上,则会出现弹出框。我希望它们出现在左下角的 bird-img 上,但我不知道如何实现。如果你能帮助我,那就太好了。

【问题讨论】:

    标签: javascript jquery html twitter-bootstrap popover


    【解决方案1】:

    方法一:

    jQuery 悬停处理程序采用“in”和“out”方法,在您的示例中,您只分配“in”方法来显示弹出窗口。这很好,但不要将它附加到“this”,您应该将它附加到您的鸟图像。确保也将弹出窗口的触发器更改为手动。那么在hover的“out”方法中,只需要隐藏popover即可。

    $('#registerHere input').hover(function()
    {
        $('#birdie').popover({
                "trigger": 'manual',
                "placement":'top',
                    }).popover('show');
    },
    function()
    {
        $('#birdie').popover('hide');
    });
    

    方法二:

    或者,保留您所拥有的,但使用提供的“选择器”选项,并将您的鸟图像作为参数,这应该会触发您的控件的弹出框,但将其委托给您的鸟图像。

    选择器:如果提供了选择器,则工具提示对象 将委托给指定的目标

    $('#registerHere input').hover(function()
    {
        $('#birdie').popover({
                "selector": "#birdie",
                "placement":'top',
                    }).popover('show');
    });
    

    编辑:添加示例代码。 我没有机会对此进行测试,因此可能存在一些语法错误或其他问题,但总体思路就在那里。

    【讨论】:

    • 嗨 Miika,首先感谢您的回答。但是......它似乎不起作用:/我首先添加了您的方法2,然后是方法1(它现在在测试站点)。我没有收到任何错误,但 Popover 现在没有显示在任何地方。方法1也有一点语法错误,删除in-function后面的)。
    • 我认为问题在于:我将弹出框内容等存储在输入字段的 data-content 和 data-original-title 属性中。必须给他们弹出功能作为内容: $thecontent 等......但不是今天。无论如何,非常感谢。
    • 好的,刚刚做到了....问题仍然存在:弹出框没有动态显示内容:/有什么想法吗?
    • 根据文档,您可以使用函数来动态填充弹出框的内容。
    • 你必须调用 $('#vogel').data('popover', null).popover({...}) 而不仅仅是 .popover({...})每次都重新实例化弹出框。现在像魅力一样工作:)
    猜你喜欢
    • 2018-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-24
    相关资源
    最近更新 更多