2013-01-04 5 views
12

Sto cercando di far funzionare Fullcalendar con i popover di twitter boostrap.
se faccio clic su un evento, voglio mostrare alcuni dettagli nel popover.
Quindi prima aggiunte questo frammento di lil per Fullcalendar:Fullcalendar con Twitter Bootstrap Popover

eventClick: function(event, jsEvent, view) { 
     $this = $(this); 
     $this.popover({html:true,title:event.title,placement:'top'}).popover('show'); 
     return false;    
    }, 

Ma ora corro in 2 problemi:

  1. Fullcalendar è all'interno di un div che ha overflow: hidden o qualcosa del genere, perché il popover viene tagliato al confine di Fullcalendar. Come lo aggiusto?
  2. Simile al problema 2 Vorrei posizionare il popover tramite una funzione in alto, a sinistra, a destra o in basso a seconda della posizione in cui si trova l'evento nella griglia Fullcalendar. Come posso fare una tale funzione?

grazie!

+0

sarebbe fantastico se fosse possibile fornire il violino o il collegamento alla pagina. – BillPull

+0

Per il punto 2) ho implementato una soluzione subottimale per ora, ovvero, se l'evento si verifica da domenica a mercoledì, posiziono il popover a destra, altrimenti a sinistra. E se view.type è Day o agendaDay, lo posiziono sopra. In questo modo di solito eviti che il popover venga tagliato occluso da qualcosa. – Petruza

risposta

19

Dalla versione 2.3 bootstrap ora ha un'opzione "contenitore" per i popover che aggiunge il popover a un elemento specifico.

basta aggiungere {container:'body'} per aggiungere al corpo

$this.popover({html:true,title:event.title,placement:'top',container:'body'}).popover('show'); 
+0

Funziona alla grande a meno che non scorri il calendario, ora il popover rimane nella stessa posizione rispetto al corpo, ma ora è staccato dall'evento del calendario. – Petruza

11

Questo codice mi ha aiutato

$('#calendar').fullCalendar({ 
    eventRender: function (event, element) { 
     element.popover({ 
      title: event.name, 
      placement: 'right', 
      content: + '<br />Start: ' + event.starts_at + '<br />End: ' + event.ends_at + '<br />Description: ' + event.description, 
     }); 
    } 
}); 

versione bootstrap - 2.3.2, calendario completo - 1.6.4

tratto da https://groups.google.com/forum/#!topic/twitter-bootstrap-stackoverflow/9pkC3_lodmY

2

Aggiungi il popover al calendario containe r per scorrere il popover con il calendario.

  $(jsEvent.target).popover({ 
       html: true, 
       container:'#calendar', 
       placement: 'right' 
      });