【问题标题】:Add Bootstrap Tooltip when Bootstrap Switch is Disabled禁用引导开关时添加引导工具提示
【发布时间】:2016-04-28 00:22:25
【问题描述】:

类似于this question 使用引导按钮我希望添加一个工具提示,以便在我的引导开关被禁用时显示。

我有this JSFiddle,当地图达到一定的缩放比例时,它会根据下面的代码禁用开关。我现在想添加一个工具提示,告诉用户在禁用 Switch 时放大。

map.on('zoomend', function (e) {
    // Add/remove layers based on zoom level
    if (map.getZoom()>=5) {
        $("[name='my-checkbox2']").bootstrapSwitch('disabled',false);
    }
    else if (map.getZoom()<5) {
        $("[name='my-checkbox2']").bootstrapSwitch('disabled',true);
    }
});

【问题讨论】:

  • 您的代码有问题吗?您发布的示例不包含与工具提示相关的任何内容。
  • 对不起,应该说,JSFiddle 的版本是空白的,而不是我的失败尝试。
  • 您可能想查看bootstrap documentation 的工具提示。我认为您可以根据您已经实现的逻辑手动显示或隐藏工具提示。
  • 好的,然后干杯,我会更详细地研究一下,我认为它可能会包含在 Bootstrap Switch 的选项中,但显然我无法判断。
  • @wahwahwah 我查看了 bootstrap / bs 开关文档并来到this,但不确定如果开关被禁用如何链接。

标签: jquery css twitter-bootstrap tooltip


【解决方案1】:

将工具提示分配给复选框本身是没有用的,因为它是隐藏的 - 而是显示/隐藏复选框被包装到的 outer .bootstrap-switch 元素的工具提示:

map.on('zoomend', function(e) {
    // Add/remove layers based on zoom level
    if (map.getZoom() >= 5) {
        $("[name='my-checkbox2']").bootstrapSwitch('disabled', false);

        $("[name='my-checkbox2']")
            .closest('.bootstrap-switch')
            .tooltip('destroy');

    } else if (map.getZoom() < 5) {
        $("[name='my-checkbox2']").bootstrapSwitch('disabled', true)

        $("[name='my-checkbox2']")
            .closest('.bootstrap-switch')
            .attr('title', 'Zoom more in')
            .tooltip();

    }
});

立即触发zoomend 更新工具提示状态:

map.fireEvent('zoomend')

更新小提琴 -> https://jsfiddle.net/ujzaakv3/3

【讨论】:

  • 谢谢,唯一的问题是当开关没有被禁用时,当你将鼠标悬停在它上面时它仍然显示工具提示?
  • @JoshuaDickerson,我的错 :( 当然使用 tooltip('destroy') 而不是 tooltip('hide') -> jsfiddle.net/ujzaakv3/1
  • 谢谢,我试过'禁用'而不是'破坏'效果很好!
  • 有没有一种方法可以在不将其附加到 zoomend 函数的情况下实现这一点,因为每次地图放大/缩小时它都会弹出,对用户来说看起来不太好?也许只是在用户将鼠标悬停在禁用的复选框上时显示?
  • @JoshuaDickerson,我以为你想让工具提示默认可见,只需使用 tooltip() 而不是 tooltip('show') -> jsfiddle.net/ujzaakv3/2 工具提示只是当鼠标悬停在引导开关上时可见。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-17
  • 2018-07-12
  • 2013-05-15
  • 1970-01-01
  • 2016-09-01
相关资源
最近更新 更多