我将 Tippy ( https://atomiks.github.io/tippyjs/ ) 实现为 Fullcalendar ( https://fullcalendar.io/ )的工具提示库
我在fullcalendar的eventRender函数中有这个:
eventRender(info) {
info.el.setAttribute('id', info.event.id);
let eventWidth = 0;
let relX = 0;
let relY = 0;
let relOffsetX = 0;
$( info.el).mouseover(function( event ) { //info.el -> html element
relX = event.pageX - $(this).offset().left;
relY = event.pageY - $(this).offset().top;
eventWidth = document.getElementById(info.event.id).offsetWidth;
relOffsetX = relX - eventWidth / 2; // not finished but atm nothing is set as offset
tippy(info.el, {
content: `${info.event.extendedProps.listTitle } / ${ info.event.extendedProps.swimlaneTitle}`,
offset: relOffsetX,
});
});
偏移量计算正确,但它不起作用,工具提示总是在相同的位置,忽略鼠标位置。
有人可以帮忙吗?
我也会接受另一个工具提示节点或流星包作为替代解决方案,它效果更好。