我希望当有人悬停在一个元素上时,能够出现一个提示框,并持续几秒钟后消失,即使鼠标仍停留在该元素上。以下是我的代码:
<div data-sentence-tooltip="yes" data-tooltip-content: "some content"> some text </div>
$('[data-sentence-tooltip="yes"]').tooltip({title: function(){return $(this).attr('data-tooltip-content')}});
我根据其他相关的SO问题尝试了以下两种方法:
setTimeout(function(){$(".tooltip").fadeOut("fast");}, 2000);
并且
jQuery.fn.delay = function(time,func){
return this.each(function(){
setTimeout(func,time);
});
};
$('[id^="tooltip"]').delay(2000, function(){
$('[id^="tooltip"]').fadeOut('fast');
}
);
但我认为我知道为什么这些都不起作用。可能是因为.tooltip
或id=tooltip*
会在DOM中动态添加。
参考: