javascript-如何通过事件更改弹出窗口的延迟?
作者:互联网
我试图在单击时更改Bootstrap弹出窗口中的delay选项.我希望结果是这样,当您单击第二个按钮时,弹出窗口会立即显示,但是不显示,我也不知道为什么.
我试图使用处置,禁用,隐藏,但它们都不起作用.有人有什么想法吗?
$('[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/
解决方法:
您可以在div中将带有Popover元素的Button包装起来,而不是切换按钮的Popover,而是在包装器上创建新的Popover并进行切换.
<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');
});
标签:twitter-bootstrap-3,bootstrap-popover,javascript,jquery 来源: https://codeday.me/bug/20191210/2104648.html