fullcalendar 是一个很优秀的日历插件。qTip2 是一个强大的提示工具。在讲下面的功能之前,需要对fullcalendar 和 qTip2 有些了解,可直接点击下面贴出的2个地址:

fullcalendar

qTip2

我现在需要实现的功能就是鼠标放到事件上去,展示事件详情,我们可以借助 fullcalendar的 eventRender方法 和 qTips2 实现这个效果。

效果图如下:

具体实现步骤:

1.创建一个div,用于放事件详情;

<div class="event-detail-wrap" id="event-detail">
<div class="detail-info-list">
<div class="js_event_detail_time"></div>
<div class="js_event_detail_team"></div>
<div class="js_event_detail_subject"></div>
<div class="js_event_detail_teacher"></div>
</div> <div class="action-group">
<a href="#">日程详情</a>
<a href="#">复制</a>
<a href="#">编辑</a>
<a href="#">删除</a>
</div>
</div>

2.通过eventRender + qTip赋值,并显示浮层:

var calendar = new FullCalendar.Calendar(calendarEl, {
/***
*这里略过日历的相关配置
 */

eventRender: function (info) {
var eventStart = $.addZero(new Date(info.event.start).getHours())+':'+ $.addZero(new Date(info.event.start).getMinutes()),
eventEnd = $.addZero(new Date(info.event.end).getHours())+':'+ $.addZero(new Date(info.event.end).getMinutes()),
eventTitle = info.event.title,
eventTitleArray = eventTitle.split(',');
$(".js_event_detail_time").text("时间:" +eventStart +"-" + eventEnd)
$(".js_event_detail_team").text(eventTitleArray[0])
$(".js_event_detail_subject").text(eventTitleArray[1])
$(".js_event_detail_teacher").text(eventTitleArray[2])
$(info.el).qtip({
content: {
text: $('#event-detail') //要提示的内容,就是上面创建的那个浮层
},
position: {
my: 'left top', //箭头的位置
at: 'top right',//提示框的位置
},
show: {
solo: true //保证每次只显示一个提示框
},
hide: {
fixed: true, //能够操作提示框
delay: 600,//多久之后隐藏提示框
event:' mouseleave',
},
style: {
classes: 'qtip-event-detail' //自定义的弹层样式
}
});
},
});
说明:
  • $.addZero 是我自己定义的方法,这里就不展开的,就是把0补齐;

  • eventTitleArray = eventTitle.split(',');请根据实际情况修改,我项目里面的数据是以“,”分开的。

3.写浮层的样式,请根据你自己的情况来写。

.qtip-event-detail {
width: 255px;
background-color: #fff;
border: 1px solid #e0e0e0;
border-radius: 2px;
border-top:3px solid #2878f0;
padding:2px;
box-shadow: 0 0 8px rgba(0,0,0,.2);
}
.qtip-event-detail .qtip-tip{
top: 6px !important;
}
.event-detail-wrap{
display: none;
font-size: 14px;
line-height: 26px;
color: #666
}
.detail-info-list{
color: #999;
}
.event-detail-wrap .action-group{
border-top:1px solid #e0e0e0;
padding-top:8px;
margin-top: 8px;
text-align: right;
}
.event-detail-wrap .action-group a{
color: #2878f0;
text-decoration: none;
display: inline-block;
margin-left: 6px;
}

参考文档:

bootstrap-popover-get-stuck-in-fullcalendar

fullcalendar + qTip2显示事件详情的更多相关文章

  1. 11月10日下午 ajax做显示信息以后用ajax、Bootstrp做弹窗显示信息详情

    1.用ajax做弹窗显示信息详情 nation.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&qu ...

  2. ajax做显示信息以后用ajax、Bootstrp做弹窗显示信息详情

    1.用ajax做弹窗显示信息详情 nation.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&qu ...

  3. ajax“显示弹窗详情”和“删除”功能练习

    1.查看详细信息,以弹窗的形式显示,使用ajax 2.批量删除 “查询”功能可以参考前面的文章,这里只讲解ajax“显示弹窗详情”和“删除”功能 第一:在body中的代码 <title>a ...

  4. 【jquery隐藏、显示事件and提示callback】【淡入淡出fadeToggle】【滑入滑出slideToggle】【动画animate】【停止动画stop】

    1.jquery隐藏and显示事件 $("p").hide();      //隐藏事件$("p").hide(1000);  //1秒内缓慢隐藏$(" ...

  5. JQuery中隐藏/显示事件函数

    1.$("button").click(function(){ $("p").hide(); });2.如果您的网站包含许多页面,并且您希望您的 jQuery ...

  6. JS——事件详情(鼠标事件:clientX、clientY的用法)

    鼠标位置 >可视区位置:clientX.clientY 跟着鼠标移动的div案例 代码如下图:   这个案例,运用到前一篇文章中的event事件来处理.获取div的left和top值,当鼠标移动 ...

  7. demo2动态加载显示商品详情页

    /* 要求:实现 头像+昵称(多余7位用...) 商品图片(根据商品实际的图片的大小进行动态的展示.按照一定的比例进行展示.) 产品简介.产品简介在商品图片的下边.并跟随商品图片的大小进行动态的收缩或 ...

  8. androidwebview网页显示事件

    @Overridepublic void onPageCommitVisible(WebView view, String url) { super.onPageCommitVisible(view, ...

  9. jqgrid显示一行的详情

    http://blog.csdn.net/yangbobo1992/article/details/7930145 http://www.trirand.com/jqgridwiki/doku.php ...

随机推荐

  1. 理解SQL Server中索引的概念,原理以及其他(转载)

    简介 在SQL Server中,索引是一种增强式的存在,这意味着,即使没有索引,SQL Server仍然可以实现应有的功能.但索引可以在大多数情况下大大提升查询性能,在OLAP中尤其明显.要完全理解索 ...

  2. jdk的下载路径和环境变量的配置

    一:jdk百度网盘的下载路径: 链接:https://pan.baidu.com/s/1pF41oGcTqouULsWKEBn3hw 提取码:p1y2 复制这段内容后打开百度网盘手机App,操作更方便 ...

  3. Delphi阿里云短信【支持短信发送、短信批量发送和查询短信发送记录】

    作者QQ:(648437169) 点击下载➨Delphi阿里云短信             阿里云api文档 [Delphi 阿里云短信]是最新的阿里云短信接口,不是阿里大于短信接口,支持SendSm ...

  4. 给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用

    一般来说,删除节点可分为两个步骤: 首先找到需要删除的节点: 如果找到了,删除它. 说明: 要求算法时间复杂度为 O(h),h 为树的高度. 示例: root = [5,3,6,2,4,null,7] ...

  5. T100 GR 报表常见知识点 (含套版制作)

    轉載至赫非域 > T100 GR 报表常见知识点 前端操作 bron1984 7小时前 5浏览 0评论 8.9.1 注意事项 字体: 如果字型没选对,会造成没设对字型的数据汇出 PDF 格式乱掉 ...

  6. Oracle打印输出在控制台

    SET SERVEROUTPUT ON  --必须有,不然显示不出declare LN_C number(10,0):=0;begin DECLARE LS_STR1 VARCHAR2(200); - ...

  7. vue设置全局变量和修改

    1. 只读的全局变量 对于只读的全局变量,知道的有以下两种使用方式: 1)global.js 模块中定义:其他模块import后再使用即可 1.1)定义 import Vue from 'vue'; ...

  8. WPF 程序鼠标在窗口之外的时候,控件拿到的鼠标位置在哪里?

    原文:WPF 程序鼠标在窗口之外的时候,控件拿到的鼠标位置在哪里? 在 WPF 程序中,我们有 Mouse.GetPosition(IInputElement relativeTo) 方法可以拿到鼠标 ...

  9. CNN原理

    卷积神经网络(Convolutional Neural Network)的结构类似于神经网络,可以看做是对其的改进.它利用局部连接.权值共享.多核卷积.池化四个手段大大降低了参数的数目,使得网络的层数 ...

  10. Spring AOP无法拦截内部方法调用

    当在同一个类中,A方法调用B方法时,AOP无法工作的问题 假设一个接口里面有两个方法: package demo.long; public interface CustomerService { pu ...