Twitter Bootstrap Popover添加了一个带有事件的回调函数
Twitter Bootstrap Popover add a callback function with event
我想实现一个基于鼠标点击位置的Bootstrap Popover。似乎我需要事件来告诉我鼠标的x和y位置在哪里,以及popover的高度和宽度,以正确计算这些信息。
我目前正在做:
var pt = $.fn.popover.Constructor.prototype.show;
$.fn.popover.Constructor.prototype.show = function () {
pt.call(this);
if (this.options.callback) {
this.options.callback();
}
};
$(this).popover({
container : 'body',
html: 'true',
title: '<div id="popover-title">Title </div>',
content : '<div id="popover-body">Information </div>',
callback: function() {
// position calculation here.
}
})
但我不知道如何从回调中获取事件。
我也不太确定这样做是否正确。如果没有,请指出。
提前谢谢。
编辑:
我这样做是为了让它发挥作用,谢谢你的帮助。
$(this).popover({
placement: 'top',
container : 'body',
html: 'true',
title: '<div id="popover-title">Title </div>',
content : '<div id="popover-body">Information </div>',
trigger: 'manual'
}).click(function (e) {
var popover = $("#popover-title");
$(this).popover((popover.length != 0)? 'hide' : 'show');
popover = $("#popover-title");
if (popover && popover.parent() && popover.parent().parent()) {
popover = popover.parent().parent();
}
var left = e.pageX;
var top = e.pageY;
var height = popover.height();
var width = popover.width();
popover.css({
top: top - height,
left: left - width / 2 + 'px'
});
});
尝试
jQuery(function ($) {
var flag = false;
$(document).popover({
container: 'body',
html: 'true',
title: '<div id="popover-title">Title </div>',
content: '<div id="popover-body">Information </div>',
trigger: 'manual'
}).click(function (e) {
$(this).popover(flag ? 'hide' : 'show');
flag = !flag;
var pop = $(this).data('bs.popover');
//here pop.tip() will give the popover element also e can give the mouse cordinated
pop.tip().css({
top: e.pageX,
legt: e.pageY
})
});
});
演示:Fiddle
相关文章:
- React应用程序:道具在下一个事件后更新
- 算法:从数组(javascript/angular)中按当前日期获取上一个和下一个事件
- 全局屏幕span onclick触发一个事件javascript
- 在一个“事件”之后触发一个事件;喜欢“;
- 在离子2中,有任何方法可以将涡旋动量作为一个事件来检测
- 完整日历在多个资源上添加一个事件
- TinyMCE 将另一个事件添加到粗体和斜体按钮
- jQuery触发另一个事件中的事件
- 试图使一个事件依赖于另一个事件,并使用jquery自定义事件传递数据
- 存储一个事件处理程序中的变量以供另一个事件处理器使用
- 当表单验证失败时,我将如何最好地处理下一个事件
- 正在创建一个事件以更改鼠标悬停时的图片
- 当一个单元格被编辑时,是否有一个事件触发,但值没有'不要改变
- JavaScript一次性在多个元素上注册一个事件类型
- 如何在点击时发生另一个事件后使用localscroll
- Vanilla Js:在一个事件中开始一段时间的循环,然后用第二个事件打破它?('mouseover'启
- 取消除最后一个事件之外的所有事件,
- 鼠标滚轮按压-描述了一个事件的名称,以及如何使用jQuery侦听它
- Javascript开始处理下一个事件,然后第一次完成
- 在Jquery中将标志从一个事件传递到另一个事件