【问题标题】:how to change delay in popover with an event?如何通过事件更改弹出窗口的延迟?
【发布时间】:2019-05-16 09:11:48
【问题描述】:

我正在尝试在单击时更改 Bootstrap 弹出窗口中的延迟选项。我希望结果是这样,当您单击第二个按钮时,弹出框会立即显示,但它没有,我不知道为什么。

我尝试使用disposedisablehide,但它们都不起作用。有人有什么想法吗?

$('[data-toggle="popover"]').popover({
  trigger: "hover",
  delay: {
    show: 1000,
    hide: 150
  }
})

$('#popOnAnother').click((event) => {
  $('#popOnIt').popover('toggle')
})
<script type="text/javascript" src="//code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<link rel="stylesheet" type="text/css" href="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<script type="text/javascript" src="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">

<button id="popOnIt" data-toggle="popover" data-content="work please">
  I want to pop after deley on hover
</button>
<button id="popOnAnother">
  show pop on another button RIGHT NOW!
</button>

jsFiddle:https://jsfiddle.net/L4tmhux1/11/

【问题讨论】:

    标签: javascript jquery twitter-bootstrap-3 bootstrap-popover


    【解决方案1】:

    您可以将带有 Popover 元素的 Button 包装在 div 中,而不是切换按钮的弹出框,而是在包装器上创建新的弹出框并切换它。

    <div id="wrap">
      <button id="popOnIt" data-toggle="popover" data-content="work god damn it">
         I want to pop after deley on hover
      </button>
    </div>
    
    
    $('#popOnAnother').click((event)=>{
      $('#wrap').popover({
        content: $('#popOnIt').data('content')
      }).popover('toggle');
    });
    

    JSFiddle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-03
      • 1970-01-01
      • 2014-02-10
      • 1970-01-01
      • 2018-01-02
      • 2022-10-01
      • 2012-12-29
      相关资源
      最近更新 更多