2012-01-22 47 views
0

我正在使用FancyBox整个项目,我正在努力,并希望将FancyBox实现到FullCalendar脚本。基本上,我想弄清楚如何将事件的描述传递给FancyBox弹出窗口。我正在使用11种不同的Google日历Feed。我担心这可能会阻止这种情况发生。如果是这样的话,我可能完全放弃这个想法。FullCalendar事件通过FancyBox点击(v2)

我见过类似于我的其他问题,例如使用gcal.js文件的events.push部分,但我似乎无法弄清楚如何让别人的解决方案工作。有些我看了看其他的问题是:

有没有办法通过的的events.push节gcal.js文件弹出到FancyBox中?还是有其他方法可以将事件描述传递给FancyBox?我应该考虑将我的Google日历Feed转换为JSON字符串,而是使用PHP/MySQL创建和存储事件?我忽略了明显的东西吗?

这是我用来在eventClick上触发FancyBox的当前脚本。

eventClick: function(event) { 
    if (event.url) { 
     $.fancybox({ 
      'type': 'iframe', 
      'href': 'event.url' 
     }) 
     return false; 
    } 
    } 

在目前的形式中,显然没有提及events.push或类似的东西。它适用于推出FancyBox,但没有其他许多。使用event.url就像我现在,我给了一个缺少的页面错误,但我相信这可能是由于我在本地而不是在活动服务器上进行测试。不过,我可能会误解。

我将不胜感激任何帮助。谢谢。

回答

4

因此,自然在前一天晚上发布我的问题后,我找到了一个解决方案。对于其他人谁都有这个问题,这里是我做过什么:

eventClick: function(event) { 
    if (event.url) { 


     var fancyContent = ('<div class="header">Event Details</div> <div id="prac" class="pracform"> <label><b>Event: </b></label>' + event.title + '<br>' + '<label><b>Date: </b></label>' + event.date + '<br>' + '<label><b>Start Time: </b></label>' + event.start + '<br>' + '<label><b>End Time: </b></label>' + event.end + '<br>' + '<label><b>Description: </b></label>' + '<div class="event_desc">' + event.description + '</div>' + '<br>' + '<label><b>Location: </b></label><a href=' + event.url + '>' + event.location + '</a>' + '<br>' + '</div>'); 

     $.fancybox({ 
      'content': fancyContent 
     }) 
     return false; 
    } 
} 

我,但是,具有编辑gcal.js文件来更改设置从ISO8601到h的时候难度:MMTT,和我我想知道是否可以像上面所用的那样有一个单独的日期类别(以当前的形式返回为“undefined”)。也许在未来的FullCalendar版本中?

0

我面临着同样的问题,并使用来自fullcalendar文档eventClick例子,我做了以下内容:

如果
eventClick: function(event) { 
    if (event.url) { 
    $("a").fancybox(event.url); 
     return false; 
    } 
} 

不知道,这将有所帮助,但它为我工作。我对这个解决方案的唯一问题是,在第一次点击时,fancybox不会被调用。在第二次点击和任何后续点击时,它确实工作正常。