【问题标题】:How can I centralize bootstrap tooltip call?如何集中引导工具提示调用?
【发布时间】:2019-02-09 14:54:29
【问题描述】:

我正在处理一个所有按钮都使用工具提示的项目,但不是在我使用按钮的每个屏幕上实例化。每次更改选项卡甚至部分视图时,我都想要某种方式来实例化。知道怎么做吗?

按钮示例:

<button class="btn" href="anywhere" title="button" data-togle="tooltip"></button>

我们有加载项目每个页面的 _layout 页面,但是加载了一些 div 并具有 attr display:none; 我想为每个页面制作工具提示实例单个按钮,但项目中的每个页面都没有实例

我需要执行这段代码,我是由每个点击事件创建的,但这不是最好的方法,我需要实例化这个:

$('[data-toggle="tooltip"]').tooltip()

我的临时解决方案是这样的

$('[data-toggle="tooltip"]').tooltip({
    container: 'body',
        trigger: 'hover'
    });
    window.addEventListener("click", function (event) {
    i = 0;

    timer = setInterval(function () {
        $('[data-toggle="tooltip"]').tooltip({
            container: 'body',
            trigger: 'hover'
        });

        if (i >= 2) {
             clearInterval(timer);
        }

             i++
    }, 500)
});

【问题讨论】:

    标签: javascript jquery html tooltip event-listener


    【解决方案1】:

    看 $.live http://api.jquery.com/live/

    为现在和将来匹配当前选择器的所有元素附加一个事件处理程序。

    $('[data-toggle="tooltip"]').live('click', function(){
        $(this).tooltip({
            container: 'body',
            trigger: 'hover'
        });
    });
    

    【讨论】:

    • 不再支持直播活动
    【解决方案2】:

    这是中继方式

    $('[data-toggle="tooltip"]').tooltip({
        container: 'body',
            trigger: 'hover'
        });
        window.addEventListener("click", function (event) {
        i = 0;
    
        timer = setInterval(function () {
            $('[data-toggle="tooltip"]').tooltip({
                container: 'body',
                trigger: 'hover'
            });
    
            if (i >= 2) {
                 clearInterval(timer);
            }
    
                 i++
        }, 500)
    });
    

    【讨论】:

      猜你喜欢
      • 2016-07-15
      • 2019-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多