2015-02-24 40 views
0

由于FullCalendar无法读取分配给Google日历中事件的颜色,因此我需要能够根据各个事件标题的文本内容设置事件的显示方式。是否可以根据标题分配FullCalendar事件的背景颜色?

阅读尽可能多的帖子,我可以找到关于这个问题,看起来FullCalendar的'eventRender'是最有可能的路线,但最接近我能找到我需要的东西是沿着以下几点:

eventRender: function(event, element) { 
       if(event.description == "blah blah") { 
        element.css('background-color', '#ff000'); 

我的问题是,(一)我需要eventRender适用于该事件的标题,而不是他们的描述,以及(b)我需要它的的情况下,“如果标题包括的话blah-blah',而不是'如果标题是完全匹配 for blah blah'

我希望以上所有内容不要太乱码和荒谬。对于这一切,我仍然感觉很好。所以任何帮助,建议,想法,或正确的方向指导将非常感激地收到! :)

非常感谢您的时间。

修改: 附加信息。我在FullCalendar html页面上使用的脚本(无API密钥和Google ID)

<script> 

     $(document).ready(function() { 

     $('#calendar').fullCalendar({ 
      height: 'auto', 
      header: { 
       left: 'prev,next today', 
       center: 'title', 
       right: 'agendaDay,month', 
      }, 

      eventRender: function(event, element) { 
       if(event.description == "blah blah") { 
        element.css('background-color', '#ff000'); 
       } 
      }, 

      // Google API key 
      googleCalendarApiKey: 'xxxxxxxxx', 

      // Diary Dates 
      events: 'xxxxxxxxx', 


      eventClick: function(event) { 
       // opens events in a popup window 
       window.open(event.url, 'gcalevent', 'width=700,height=600'); 
       return false; 
      }, 

      loading: function(bool) { 
       $('#loading').toggle(bool); 
      } 

     }); 

    }); 

    </script> 
+0

你可以提供一个小提琴吗?对于您的(b)问题,您可以使用.indexOf()而不是== – 2015-02-24 15:43:26

+0

感谢您的回复,Robin。我担心我对小提琴不太熟悉;所以我需要一段时间才能为民众设置一些东西来看看(并且增加Dreamweaver对我的冲击,所以我有点茫然不知所措)。 如果有帮助,这是我在FullCalendar html页面上使用的脚本(无API密钥和Google ID)... – 2015-02-24 16:03:41

+0

Apols Robin,我通过编辑我的原始帖子来添加脚本你回答的时间。我现在会尝试你的建议...两个抽搐... – 2015-02-24 16:11:30

回答

1
在eventRender回调

if(-1 != event.title.indexOf("blah blah")) { 
    element.find('.fc-title').css('background-color', '#ff000'); 
} 

会做

或更好的,应用一种风格element.addClass("event-bg-class");

+0

非常感谢您的回复,非常感谢...我马上试一试,尽快回复并尽快回复:) – 2015-02-26 09:21:56

+0

没有快乐。我通常很顽强,但经过几天的努力,我恐怕这一次让我完全失败。我确信这是我做错事和/或太愚蠢以至于无法理解。不过谢谢你的时间和建议。真的非常感谢。 x – 2015-03-05 11:32:55

+0

Nnnnnnnnngh!我最后一次放弃了,因为我这样做,发现颜色应该是**#fff000 **而不是**#ff000 **。我可能应该用象牙处理的左轮手枪进入研究,做好体面的事情吧!百万感谢你们(坚如磐石)的建议! – 2015-03-05 13:23:04

0

你基本上试过了吗?

if(-1 != event.title.indexOf("blah blah")) { 
    element.css('background-color', '#ff000'); 
} 
+0

非常感谢,但可悲的是,似乎并没有在这种情况下工作。 – 2015-02-24 16:13:59

相关问题