仅在月视图中显示工具提示并在日视图中隐藏
Show tooltip only on Month view and hide on Day view
我正在使用 Kendo UI 调度程序。
将鼠标悬停在每个事件上时,我会显示包含该特定事件详细信息的工具提示。到这里,一切都很好。
但是,我不想显示 Day 视图的 OnMouseOver
工具提示。我只想显示 月视图 的工具提示。
如何仅在 月 视图中显示工具提示并在 日 视图中禁用?
var _data = new kendo.data.SchedulerDataSource({
data: [ {
eventID: 8,
title: "Group meeting.",
start: new Date(),
end: new Date(),
pending:false,
recurrenceRule: "",
recurrenceException: "",
description: "Take my brother to his group meeting.",
isAllDay:false,
ownTimeSlot:true,
careAssistantId: 5,
clientId: 6
},{
eventID: 9,
title: "Make dinner.",
start: new Date("2013/06/13 11:00"),
end: new Date("2013/06/13 13:30"),
pending:true,
recurrenceRule: "",
recurrenceException: "",
description: "Make dinner for my mom.",
isAllDay:false,
ownTimeSlot:true,
careAssistantId: 5,
clientId: 6
} ],
schema: {
model : {
id : "eventID"
}
}
});
function save(){
console.log(_data);
}
$('#scheduler').kendoScheduler({
date: new Date(),
startTime: new Date("2013/6/13 07:00 AM"),
height: 600,
views: [
{ type: "day", title: "Day" },
{ type: "month", selected: true },
],
save: save,
dataSource:_data
});
$(function () {
$("#scheduler").kendoTooltip({
filter: ".k-event",
position: "top",
width: 250,
content: kendo.template($('#template').html())
});
});
<script id="template" type="text/x-kendo-template">
#var uid = target.attr("data-uid");#
#var scheduler = target.closest("[data-role=scheduler]").data("kendoScheduler");#
#var model = scheduler.occurrenceByUid(uid);#
#if(model) {#
<strong>event start:</strong> #=kendo.format('{0:d}',model.start)#<br />
<strong>event end:</strong> #=kendo.format('{0:d}',model.end)#<br />
<strong>event description:</strong> #=model.description#<br />
#} else {#
<strong>No event data is available</strong>
#}#
</script>
这是有效的 dojo 示例。
我在配置中添加了 show
和 hide
。在 show
中,您只需决定是否要弹出工具提示。如果你愿意,那就让它可见吧。
show: function(e){
var scheduler = $('#scheduler').data('kendoScheduler');
if(scheduler.viewName() === 'day'){
this.content.parent().css("visibility", "visible");
}
},
hide:function(e){
this.content.parent().css("visibility", "hidden");
},
此外,将工具提示设置为默认不可见,因为您在 show
中定义了逻辑。
.k-tooltip.k-popup{
visibility: hidden;
}
我正在使用 Kendo UI 调度程序。
将鼠标悬停在每个事件上时,我会显示包含该特定事件详细信息的工具提示。到这里,一切都很好。
但是,我不想显示 Day 视图的 OnMouseOver
工具提示。我只想显示 月视图 的工具提示。
如何仅在 月 视图中显示工具提示并在 日 视图中禁用?
var _data = new kendo.data.SchedulerDataSource({
data: [ {
eventID: 8,
title: "Group meeting.",
start: new Date(),
end: new Date(),
pending:false,
recurrenceRule: "",
recurrenceException: "",
description: "Take my brother to his group meeting.",
isAllDay:false,
ownTimeSlot:true,
careAssistantId: 5,
clientId: 6
},{
eventID: 9,
title: "Make dinner.",
start: new Date("2013/06/13 11:00"),
end: new Date("2013/06/13 13:30"),
pending:true,
recurrenceRule: "",
recurrenceException: "",
description: "Make dinner for my mom.",
isAllDay:false,
ownTimeSlot:true,
careAssistantId: 5,
clientId: 6
} ],
schema: {
model : {
id : "eventID"
}
}
});
function save(){
console.log(_data);
}
$('#scheduler').kendoScheduler({
date: new Date(),
startTime: new Date("2013/6/13 07:00 AM"),
height: 600,
views: [
{ type: "day", title: "Day" },
{ type: "month", selected: true },
],
save: save,
dataSource:_data
});
$(function () {
$("#scheduler").kendoTooltip({
filter: ".k-event",
position: "top",
width: 250,
content: kendo.template($('#template').html())
});
});
<script id="template" type="text/x-kendo-template">
#var uid = target.attr("data-uid");#
#var scheduler = target.closest("[data-role=scheduler]").data("kendoScheduler");#
#var model = scheduler.occurrenceByUid(uid);#
#if(model) {#
<strong>event start:</strong> #=kendo.format('{0:d}',model.start)#<br />
<strong>event end:</strong> #=kendo.format('{0:d}',model.end)#<br />
<strong>event description:</strong> #=model.description#<br />
#} else {#
<strong>No event data is available</strong>
#}#
</script>
这是有效的 dojo 示例。
我在配置中添加了 show
和 hide
。在 show
中,您只需决定是否要弹出工具提示。如果你愿意,那就让它可见吧。
show: function(e){
var scheduler = $('#scheduler').data('kendoScheduler');
if(scheduler.viewName() === 'day'){
this.content.parent().css("visibility", "visible");
}
},
hide:function(e){
this.content.parent().css("visibility", "hidden");
},
此外,将工具提示设置为默认不可见,因为您在 show
中定义了逻辑。
.k-tooltip.k-popup{
visibility: hidden;
}