我正在使用jQuery插件PowerTip来显示悬停工具提示。我用$('.tooltip').powerTip()初始化它,这在已经加载的内容上效果很好,但是如果我动态加载<div class="tooltip" data-powertip="Hey">Hey</div>,则必须再次运行$('.tooltip').powerTip()函数,这似乎很浪费,特别是如果我有数百个这样的函数。有可能做这样的事情吗? :

1)

$(document).powerTip('.tooltip', {})


要么

2)

$(document).on('mouseover', '.tooltip', function(e) {
    $(this).powerTip()
});

最佳答案

逻辑听起来似乎唯一的问题是您可能需要一个回调函数来触发弹出窗口,因为触发弹出窗口并对其进行初始化是同时发生的(这可能是有问题的)

$('body').on('mouseenter','.tooltip', function(event) {
    $(event.target).powerTip();
    var delay = 250; //  1/4 of a second
    setTimeout(() => {
       $(event.target).tooltip('show')
    }, delay);
});

10-08 01:48