【问题标题】:Applying 'Loadmask' to FullCalendar has strange results将“Loadmask”应用于 FullCalendar 会产生奇怪的结果
【发布时间】:2011-04-20 17:48:26
【问题描述】:
我正在使用FullCalendar 1.5.1,当我在不同的浏览器中将它与“jQuery Loadmask”配对时,我得到了奇怪的结果。
loadmask在Firefox中正常显示,我也试过在Chrome中适配。
如果我在日历开始触发异步背景事件以显示各种元素之前和之后立即暂停调试器中的脚本,我会看到掩码。但是,在常规时间运行,我在 Internet Explorer、Chrome 等中根本看不到加载掩码。
我在 Firefox 中看到它很好!?
- 到目前为止,我一直认为这是 jQuery UI 的 z-index 叠加问题,但事实证明,使用适用于 jQuery UI 的 Loadmask 并没有太大影响 -
- 我也尝试过使用超时功能等添加人工延迟,但它仍然没有显示在日历上?
【问题讨论】:
标签:
jquery
jquery-ui
jquery-plugins
fullcalendar
【解决方案1】:
想出了这个:
您可以将 $.ajax 函数的一部分封装到日历内部,但需要一些延迟:
setTimeout(function() {
$.ajax($.extend({}, ajaxDefaults, source, {
data: data,
success: function(events) {
events = events || [];
var res = applyAll(success, this, arguments);
if ($.isArray(res)) {
events = res;
}
callback(events);
},
error: function() {
applyAll(error, this, arguments);
callback();
},
complete: function() {
applyAll(complete, this, arguments);
popLoading();
}
}))
}, options.fetchDelay);