2012-03-21 2 views
11

Я хочу добавить всплывающую подсказку для полного календаря в виде года. Я пробовал с приведенным ниже, но добавил всплывающую подсказку в месяц. Я попытался с google, но не нашел ничего связанного с этим. Есть ли другой способ добавить всплывающую подсказку в виде года?Подсказка для полного календарного года в году

eventMouseover: function(calEvent,jsEvent) { 
      xOffset = 10; 
      yOffset = 30; 
      $("body").append(calEvent.tooltip); 
      $("#tooltip") 
       .css("top",(jsEvent.clientY - xOffset) + "px") 
       .css("left",(jsEvent.clientX + yOffset) + "px") 
       .fadeIn("fast"); 
    }, 
    eventMouseout: function(calEvent,jsEvent) { 
     $("#tooltip").remove(); 
    } 
+1

Как вы получаете вид год? Доступные виды определяются в документации. http://arshaw.com/fullcalendar/docs/views/Available_Views/ – MetalFrog

ответ

47
eventMouseover: function(calEvent, jsEvent) { 
    var tooltip = '<div class="tooltipevent" style="width:100px;height:100px;background:#ccc;position:absolute;z-index:10001;">' + calEvent.title + '</div>'; 
    var $tooltip = $(tooltip).appendTo('body'); 

    $(this).mouseover(function(e) { 
     $(this).css('z-index', 10000); 
     $tooltip.fadeIn('500'); 
     $tooltip.fadeTo('10', 1.9); 
    }).mousemove(function(e) { 
     $tooltip.css('top', e.pageY + 10); 
     $tooltip.css('left', e.pageX + 20); 
    }); 
}, 

eventMouseout: function(calEvent, jsEvent) { 
    $(this).css('z-index', 8); 
    $('.tooltipevent').remove(); 
}, 
+3

, пожалуйста, измените «var $ tootlip» на «var $ tooltip». И спасибо за пример. Работайте как шарм – SERG

+0

Контекст, пожалуйста, это в '$ (« # calendar »). FullCalendar ({});' или часть ''renderEvent'' –

6

начиная с 1,5 версии, вы можете использовать QTIP (я также использовать навеселе, но он должен работать с подсказкой), чтобы отобразить подсказку о событии:

$('#calendar').fullCalendar({ 
    events: [ 
     { 
      title: 'My Event', 
      start: '2010-01-01', 
      description: 'This is a cool event' 
     } 
     // more events here 
    ], 
    eventRender: function(event, element) { 
     element.qtip({ 
      content: event.description 
     }); 
    } 
}); 

источник дока: http://arshaw.com/fullcalendar/docs/event_rendering/eventRender/

надеюсь, это поможет

+1

это также добавило всплывающую подсказку в режиме месяца, ничего не произошло в режиме просмотра года. :( – karki

23

Вы можете использовать атрибут title html без какой-либо подсказки lib:

$('#calendar').fullCalendar({ 
    events: [ 
     { 
      title: 'My Event', 
      start: '2014-01-01', 
      tooltip: 'This is a cool event' 
     } 
     // more events here 
    ], 
    eventRender: function(event, element) { 
     element.attr('title', event.tooltip); 
    } 
}); 
+3

Так как использовать jQuery 1.6 prop():' element.prop ("title", event.title); ' – dennisV

0

Вот еще одна реализация

eventMouseover: function(calEvent, jsEvent) { var tooltip = '<div class="tooltipevent" style="width:130px;height:100px;background:#aed0ea;position:absolute;z-index:10001;"> Title: ' + calEvent.title + '</div>'; var $tool = $(tooltip).appendTo('body'); 
$(this).mouseover(function(e) { 
    $(this).css('z-index', 10000); 
      $tool.fadeIn('500'); 
      $tool.fadeTo('10', 1.9); 
}).mousemove(function(e) { 
    $tool.css('top', e.pageY + 10); 
    $tool.css('left', e.pageX + 20); 
}); 
}, 
eventMouseout: function(calEvent, jsEvent) { 
$(this).css('z-index', 8); 
$('.tooltipevent').remove(); 
},