me gusta el fullcalendar JQuery-Plugin. En este momento estoy buscando una solución para mostrar más información en el evento. Por ejemplo en el DayView que ver un evento 6:00-10:00. Ahora quiero mostrar una descripción adicional en este evento (no solo la hora y el título).mostrar más texto en fullcalendar
Respuesta
Yo personalmente uso un texto de ayuda para visualizar información adicional, así que cuando alguien se cierne sobre el evento que se puede ver una descripción más largos. En este ejemplo se utiliza qTip, pero cualquier aplicación sobre herramientas funcionaría.
$(document).ready(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
$('#calendar').fullCalendar({
header: {
left: 'prev, next today',
center: 'title',
right: 'month, basicWeek, basicDay'
},
//events: "Calendar.asmx/EventList",
//defaultView: 'dayView',
events: [
{
title: 'All Day Event',
start: new Date(y, m, 1),
description: 'long description',
id: 1
},
{
title: 'Long Event',
start: new Date(y, m, d - 5),
end: new Date(y, m, 1),
description: 'long description3',
id: 2
}],
eventRender: function(event, element) {
element.qtip({
content: event.description + '<br />' + event.start,
style: {
background: 'black',
color: '#FFFFFF'
},
position: {
corner: {
target: 'center',
tooltip: 'bottomMiddle'
}
}
});
}
});
});
Con la modificación de una sola línea que podría alterar la secuencia de comandos fullcalendar.js para permitir un salto de línea y poner la información múltiple en la misma línea.
En FullCalendar.js sobre la función ~ 3922 hallazgo htmlEscape (s) línea y añadir .replace (/ br < \ s? /? >/g, '
') al final de la misma.
function htmlEscape(s) {
return s.replace(/&/g, '&')
.replace(/</g, '<')
.replace(/>/g, '>')
.replace(/'/g, ''')
.replace(/"/g, '"')
.replace(/\n/g, '<br />')
.replace(/<br\s?\/?>/g, '<br />');
}
Esto le permitirá tener varias líneas para el título, separando la información. Ejemplo sustituir el event.title con título: 'Todo el día' + '< br/>' + 'Otros Descripción'
esto es genial, creo que es una buena solución para mí. Gracias Jake – chichi
@ La respuesta de Eureka es mucho más general que esta y no le causará problemas para tratar de mantener sus cambios en fullcalendar.js sincronizados con las nuevas funciones y correcciones de errores publicadas después de realizar el cambio. – Tom
Estoy de acuerdo en que no prefiero modificar la fuente, pero a veces es una solución más limpia y fullcalendar no es exactamente un proyecto que se mueve rápidamente. – Jake1164
Este código puede ayudarle a:
$(document).ready(function() {
$('#calendar').fullCalendar({
events:
[
{
id: 1,
title: First Event',
start: .......,
end: .....,
description: 'first description'
},
{
id: 2,
title: 'Second Event',
start: .......,
end: .....,
description: 'second description'
}
],
eventRender: function(event, element) {
element.find('.fc-title').append("<br/>" + event.description);
}
});
}
Esta es una solución increíble. Muy flexible y dinámico – Catfish
agregando a eso, en lugar de 'append' podrías usar' after' si quieres crear un nuevo elemento fuera de ''. También he agregado una declaración condicional por lo que no obtengo ninguna salida * No definida *: 'if (event.description) {element.find ('. Fc-event-title'). After (" "event.description +" "); } ' – pax
Tenga en cuenta que el nombre de clase ha sido cambiado por fullCalendar y entonces en vez de' .find ('. Fc-event-title') 'use' .find ('.fc-title') 'ahora! – Michbeckable
Bueno he encontrado una solución más simple para mí:
he cambiado fullcalendar.css
y añadió lo siguiente:
float: left;
clear: none;
margin-right: 10px;
El resultado es:
.fc-event-time,
.fc-event-title {
padding: 0 1px;
float: left;
clear: none;
margin-right: 10px;
}
ahora sólo envuelve cuando se necesita.
Aquí está mi código para emergente usando qTip2 y eventMouseover
:
$(document).ready(function() {
// Setup FullCalendar
// Setup FullCalendar
(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var day=date.toLocaleDateString();
var tooltip = $('<div/>').qtip({
id: 'fullcalendar',
prerender: true,
content: {
text: ' ',
title: {
button: true
}
},
position: {
my: 'bottom center',
at: 'top center',
target: 'mouse',
viewport: $('#fullcalendar'),
adjust: {
mouse: false,
scroll: false
}
},
show: false,
hide: false,
style: 'qtip-light'
}).qtip('api');
$('#fullcalendar').fullCalendar({
editable: true,
disableDragging: true,
height: 600,
header: {
left: 'title',
center: '',
right: 'today prev,next'
},
dayClick: function() { tooltip.hide() },
eventResizeStart: function() { tooltip.hide() },
eventDragStart: function() { tooltip.hide() },
viewDisplay: function() { tooltip.hide() },
events: [
{
title: 'All Day Event',
start: new Date(2014, 3, 1)
},
{
title: 'Long Event',
start: new Date(y, m, d-5),
end: new Date(y, m, d-2)
},
{
id: 999,
title: 'Repeating Event',
start: new Date(y, m, d+4, 16, 0),
allDay: false
},
{
title: 'Meeting',
start: new Date(y, m, d, 10, 30),
allDay: false
},
{
title: 'Spring Membership Conference',
start: new Date(y, m, d+6, 7,0),
end: new Date(y, m, d+6, 13,0),
allDay: false,
description:'save the date! Join us for our Annual Membership Conference. Breakfast will be served beginning at 7:30 a.m. Featuring The EFEC Belief System & Our Pledge lunch'
},
{
title: 'Birthday Party',
start: new Date(y, m, d+1, 19, 0),
end: new Date(y, m, d+1, 22, 30),
allDay: false
}
],
eventMouseover : function(data, event, view) {
var content =
'<p>'+data.description +'<p>'+
'<h3>'+data.title+'</h3>' +
'<p><b>Start:</b> '+data.start+'<br />' +
(data.end && '<p><b>End:</b> '+data.end+'</p>' || '');
tooltip.set({
'content.text': content
})
.reposition(event).show(event);
},
});
}());
});
Por alguna razón, tengo que usar
element.find('.fc-event-inner').empty();
a hacer que funcione, que supongo que estoy en la vista del día.
como una posible solución: añadir algo más de contenido extra para el título. sobrescribir este estilo css:
.fc-day-grid-event .fc-content {
white-space: normal;
}
Esto funcionó para mí. Es 2017 ahora :). – Bart
Yo recomendaría el uso de la devolución de llamada eventAfterRender en lugar de eventRender. De hecho si se utiliza eventRender que pueda poner en peligro la correcta visualización de los eventos, en coffeescript, algo así como:
$("#calendar").fullCalendar
eventAfterRender: (event, element) ->
element.find('.fc-title').after("<span>"+event.description+"</span>")
niños hoy en día con su coffeescript/grumble – a20
Para todos los 'niños' que usan coffeescript. Asegúrate de poner 'return' al final del' eventRender'; de lo contrario, romperá la parte completa del render. – undefinedman
- 1. ¿Cómo obtengo FullCalendar para mostrar información de mi feed JSON?
- 2. Agregar evento hovertext en fullcalendar
- 3. cómo mostrar texto en html.LabelFor?
- 4. jquery fullcalendar
- 5. ¿Cómo mostrar el texto Unicode en OpenGL?
- 6. Fullcalendar: objeto arrastrable rechaza fullcalendar como desplegable aunque fullcalendar acepta drop
- 7. ¿Cómo mostrar texto en hindi en android?
- 8. Mostrar texto en hebreo en una consola
- 9. fullcalendar - mostrar evento de medio día en la vista de mes
- 10. Título de encabezado personalizado de FullCalendar
- 11. Versión minúscula de fullcalendar
- 12. jQuery FullCalendar no representa
- 13. fullcalendar siguiente y anterior
- 14. Mostrar el texto truncado normalmente, pero mostrar el texto completo en el control deslizante
- 15. jQuery fullcalendar to Persian
- 16. ¿Cómo mostrar el texto en un ImageButton?
- 17. Mostrar texto completo en Excel sin truncar
- 18. Cómo mostrar texto en IE solamente
- 19. Cómo mostrar iconos sin texto en QListWidget?
- 20. Mostrar texto oculto durante encontrar
- 21. "Mostrar contraseña como texto" control
- 22. Pruebas de integración para fullCalendar
- 23. Cómo mostrar texto bengalí adecuadamente
- 24. Disparar jQuery Qtip en FullCalendar díaHaga clic en
- 25. Agregue campos adicionales a fullcalendar
- 26. Winform TextBox no puede mostrar texto
- 27. Cómo mostrar el texto en una línea en wpf textblock
- 28. ¿Cómo mostrar texto vectorizado usando libgdx?
- 29. Modificar FullCalendar en una versión móvil
- 30. Ocultar hora de inicio en FullCalendar
Hola quiero saber una cosa en su totalidad calendario podemos mostrar el título algo así como https://www.screencast.com/t/iOSPV822VD8Y este tipo de cosas podemos hacerlo. –