7

Tooltip()fromを使用していTwitter-Bootstrapます。要素にカーソルを合わせると、 atooltipが表示されます。ただし、マウスを離さない限り、そこにとどまります。

マウスが要素から離れるまで待つのではなく、ポップアップして数秒後に消えるようにするにはどうすればよいですか?

4

4 に答える 4

1

遅延時間内に複数の mouseEnter および mouseleave イベントが発生すると、「hide」が複数回呼び出され、ツールチップが予想よりも早く閉じる可能性があります。古い呼び出しは破棄する必要があります。

$('.bstooltip').on('shown.bs.tooltip', function () {
    var that = $(this);

    var element = that[0];
    if(element.myShowTooltipEventNum == null){
        element.myShowTooltipEventNum = 0;
    }else{
        element.myShowTooltipEventNum++;
    }
    var eventNum = element.myShowTooltipEventNum;

    setTimeout(function(){
        if(element.myShowTooltipEventNum == eventNum){
            that.tooltip('hide');
        }
        // else skip timeout event
    }, 2000);
});

フィドル

于 2015-01-09T10:35:08.850 に答える
-1

ここに簡単な答えがあります

$(selector).tooltip({title:"somthing~", trigger:"hover", delay:{hide:800}, placement:"top"});

遅延オプションで非表示パラメーターのみを指定します。

クリックイベントではなくフォーカスイベントでも問題なく動作します(理由はわかりません..)

于 2016-08-04T02:49:06.630 に答える