- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在将 Qtip 附加到 eventMousever 事件而不是 fullcalendar 中的 eventRender 事件时遇到问题。
我想要这样做的原因是因为拥有数据的服务器位于另一个国家/地区,并且延迟使得在日历加载之前预取所有 qtip 文本的时间太长(最多 8 秒)。我编写了返回所需 qtip 信息的 ajax 函数,但问题是 eventRender 函数在 qtip 信息出现之前运行。因此,在我看来,最合乎逻辑的解决方案是在 eventMouseover 事件中附加 qtip(通过 ajax 发送对 qtip 文本的请求,然后将 qtip 附加到元素),但我找不到如何访问事件元素来自 eventMouseover 事件。 (我尝试将 qtip 附加到 mouseover 事件的 $(this) ,但没有任何反应(也没有错误)。
我还尝试过另一种方法。加载日历后,我在后台获取所有工具提示,然后尝试 .fullCalendar( 'rerenderEvents' ) 但这不会按预期工作 -> 例如,除非您更改 View /更改月份,否则不会出现新的工具提示只有这样,新的工具提示(在后台获取)才会出现,所以我相信 rerenderEvents 不起作用。
关于如何解决这个问题有什么建议吗?
eventRender 的代码(有效):
eventRender: function (event, element) {
if (event.qtip_id) {
element.qtip({
content: {
title: $('#' + event.qtip_title_id).html(),
text: $('#' + event.qtip_id).html()
},
position: {
my: 'bottom center',
at: 'top center',
//target: 'mouse',
adjust: { mouse: false },
viewport: $(window),
},
style: {
classes: 'bigger_font qtip-light qtip-shadow'
},
show: {
delay: 500
},
hide: {
fixed: true
}
});
}
渲染日历后在后台获取所有工具提示的代码:
for (i = 0; i<all_events.length; i++) {
if (all_events[i].qtip_id) {
//alert(all_events[i].title);
myevent = {
title: all_events[i].title,
url: all_events[i].url,
color: all_events[i].color,
form_id: all_events[i].form_id,
priority: all_events[i].priority,
qtip_id: all_events[i].qtip_id,
qtip_title_id: all_events[i].qtip_title_id,
qtip_dealer: all_events[i].qtip_dealer,
qtip_country_id: all_events[i].qtip_country_id,
qtip_customer_id: all_events[i].qtip_customer_id,
qtip_customer_name: all_events[i].qtip_customer_name,
qtip_id: all_events[i].qtip_id,
qtip_id_id: all_events[i].qtip_id_id
};
$.ajax({
type: 'POST',
url: 'ajax/calendar_generate_qtip.php',
data: myevent,
dataType: 'html',
success: function(data) {
$('#qtip_holder').html($('#qtip_holder').html() + data);
}
}).fail(function() {
});
}
}
$('#calendar').fullCalendar('rerenderEvents');
所以我的问题是:是否可以在完整日历的 eventMouseover 事件中创建和显示 qtip? (因为 eventMouseover 无法访问事件的元素,至少我看不到它)。
感谢您的阅读。
附注我为我蹩脚的英语道歉。
最佳答案
如果您想通过 eventMouseover 访问事件的元素,这是可能的。
从 FullCalendar 文档中,它清楚地表明,在 eventMouseover 的回调函数中,“this”被设置为事件的 <div>
element 和 $(this) 提供与您在 eventRender 回调中获得的相同元素对象。 http://fullcalendar.io/docs/mouse/eventMouseover/
你提到过
(I have tried attaching the qtip to $(this) of mouseover event, but nothing happens
但我相信这是正常的鼠标悬停事件而不是回调。
关于javascript - 鼠标悬停时使用 Fullcalendar Qtip 而不是 eventRender,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33875765/
我在 AngularJs 中使用 FullCalendar 插件。 一切正常。在 eventRender 事件中,我为每个事件添加 background color、image、tooltip 和 l
我正在尝试使用 addClass 在 fc-event-inner 类中显示图像。我想用 jquery 来做到这一点,这样我就可以在不同的事件中使用不同的图像。谁能告诉我为什么这不起作用? calen
当我设置 fullCalendar 并设置 eventRender 函数回调时,我想根据 LeadId 是否为空来设置事件的颜色。但这似乎不起作用,即使文档是这样说的:http://arshaw.co
在我的全日历上,我有一些复选框,我希望它们像过滤器一样使用react。简而言之:我想过滤一个、全部、三个、两个(多个)...等等。 到目前为止,我可以选择一个复选框,并且它会返回正确的事件,但当然,它
现在安装了 FullCalendar 版本 3.9.0(之前的版本为 3.4.0)的现有网站(用于显示各种 Google 日历的内容)在单击事件以显示事件时不再显示事件弹出窗口完整的事件描述。相反,以
我使用 fullcalendar.io vue 扩展。 而且我想挂接到事件渲染中以添加操作,但事件回调仅包含 JS 元素。 有办法把vue组件注入(inject)进去吗? JS import Ful
我想根据数据库为事件着色。我使用事件渲染。完整代码如下: $(document).ready(function() { var date = new Date(); var
Version : Fullcalendar-Scheduler v5 beta2 我在chrome中尝试了如下的eventRender: document.addEventListener('DOM
我的应用程序中有一个简单的 SVG,现在悬停时,我想将此 div 动态附加到完整日历 API 中的某个元素 UPDATE: Here is my full component import React
我正在使用 FullCalendar从 PHP/MySQL 渲染事件,一切正常。我查看了 FullCalendar 文档和 bootstrap to achieve my popover event
我正在开发一个完整的日历概览界面,使用:服务器上的 Flask-python 和客户端上的 html jinja2 js。 现在我正在尝试使用 tooltip.js 在悬停或单击时创建工具提示。 我有
我有一个关于 Fullcalendar 的问题,请附加到 EventRender 和 javascript 中。 我有这个 eventRender: function (event, element)
我在将 Qtip 附加到 eventMousever 事件而不是 fullcalendar 中的 eventRender 事件时遇到问题。 我想要这样做的原因是因为拥有数据的服务器位于另一个国家/地区
有没有办法通过 eventRender Fullcalendar 从 angularjs 指令动态渲染模板? 我想要实现的是如下所示: eventRender: function(event, ele
在与 jquery 一起使用的 fullCalendar 中,我有这个 eventRender: eventRender: function (event, element, view) {
我在全日历上显示事件时遇到问题。我正在使用 ASP.net Webforms 和 C#。我有 ashx 处理程序,我调用它来从数据库加载值,然后将其格式化为发回的 json 响应。下面是用于生成日历的
我在 angularjs 中使用完整的日历插件。 https://github.com/angular-ui/ui-calendar 将多个数组提供给完整日历的 eventSource。 $scope
我是一名优秀的程序员,十分优秀!