Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过FancyBox(v2)点击完整日历事件_Javascript_Fancybox_Fullcalendar_Google Calendar Api - Fatal编程技术网

Javascript 通过FancyBox(v2)点击完整日历事件

Javascript 通过FancyBox(v2)点击完整日历事件,javascript,fancybox,fullcalendar,google-calendar-api,Javascript,Fancybox,Fullcalendar,Google Calendar Api,我在整个项目中都在使用FancyBox,并且希望在FullCalendar脚本中实现FancyBox。基本上,我想弄清楚如何将事件的描述传递给FancyBox弹出窗口。我正在使用11种不同的谷歌日历订阅源。我担心这可能会阻止这种情况发生。如果是这样的话,我可能会完全放弃这个想法 我见过其他类似的问题,比如使用gcal.js文件的events.push部分,但我似乎不知道如何让其他人的解决方案起作用。我研究过的其他一些问题包括: 有没有办法将gcal.js文件的events.push部

我在整个项目中都在使用FancyBox,并且希望在FullCalendar脚本中实现FancyBox。基本上,我想弄清楚如何将事件的描述传递给FancyBox弹出窗口。我正在使用11种不同的谷歌日历订阅源。我担心这可能会阻止这种情况发生。如果是这样的话,我可能会完全放弃这个想法

我见过其他类似的问题,比如使用gcal.js文件的events.push部分,但我似乎不知道如何让其他人的解决方案起作用。我研究过的其他一些问题包括:

有没有办法将gcal.js文件的events.push部分传递给FancyBox弹出窗口?或者是否有其他方法将事件描述传递给FancyBox?我应该考虑将谷歌日历订阅转换为JSON字符串,而使用PHP/MySQL来创建和存储事件吗?我是否忽略了一些显而易见的事情

下面是我用来在eventClick上启动FancyBox的当前脚本

  eventClick: function(event) {
    if (event.url) {
        $.fancybox({
            'type': 'iframe',
            'href': 'event.url'
        })
        return false;
    }
  }
在它目前的形式中,显然没有提及events.push或任何类似的内容。它对于启动FancyBox非常有效,但除此之外就没有什么了。像我现在这样使用event.url,我会遇到一个缺页错误,但我相信这可能是因为我在本地测试,而不是在实时服务器上测试。然而,我可能弄错了


我将感谢任何帮助。谢谢。

所以,在前一天晚上发布了我的问题之后,我自然找到了一个解决方案。对于其他有此问题的人,以下是我所做的:

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;
    }
}
event单击:函数(事件){
if(event.url){
var fancyContent=(“事件详细信息事件:'+Event.title+'
'+'日期:'+Event.Date+'
'+'开始时间:'+Event.Start+'
'+'结束时间:'+Event.End+'
'+'描述:'+'+Event.Description+'
'+'位置:'+'
'+'>); $.fancybox({ “内容”:fancyContent }) 返回false; } }

然而,我在编辑gcal.js文件以将时间集从ISO8601更改为h:mmTT时遇到了困难,我想知道是否有可能像我上面使用的那样有一个单独的日期类别(在其当前形式中,它返回为“未定义”)。也许在未来的FullCalendar发行版中?

所以,在前一天晚上发布了我的问题之后,我自然找到了一个解决方案。对于其他有此问题的人,以下是我所做的:

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;
    }
}
event单击:函数(事件){
if(event.url){
var fancyContent=(“事件详细信息事件:'+Event.title+'
'+'日期:'+Event.Date+'
'+'开始时间:'+Event.Start+'
'+'结束时间:'+Event.End+'
'+'描述:'+'+Event.Description+'
'+'位置:'+'
'+'>); $.fancybox({ “内容”:fancyContent }) 返回false; } }

然而,我在编辑gcal.js文件以将时间集从ISO8601更改为h:mmTT时遇到了困难,我想知道是否有可能像我上面使用的那样有一个单独的日期类别(在其当前形式中,它返回为“未定义”)。也许在未来的FullCalendar版本中?

我也遇到了同样的问题,使用FullCalendar文档中的eventClick示例,我做了以下工作:

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

不确定这是否会有帮助,但对我来说很有效。这个解决方案的唯一问题是,在第一次单击时,fancybox不会被调用。在第二次单击和任何后续单击时,它都可以正常工作。

我遇到了同样的问题,使用fullcalendar文档中的eventClick示例,我做了以下操作:

eventClick: function(event) {
    if (event.url) {
    $("a").fancybox(event.url);
        return false;
    }
}
不确定这是否会有帮助,但对我来说很有效。这个解决方案的唯一问题是,在第一次单击时,fancybox不会被调用。在第二次单击和任何后续单击时,它都可以正常工作