diff --git fullcalendar.views.js fullcalendar.views.js
index a84da16..03e741c 100644
--- fullcalendar.views.js
+++ fullcalendar.views.js
@@ -2,84 +2,88 @@
 
 Drupal.behaviors.fullCalendar = {
 attach: function(context) {
-  $('#fullcalendar-content').hide(); //hide the failover display
-  $('#fullcalendar').fullCalendar({
-    defaultView: Drupal.settings.fullcalendar.defaultView,
-    theme: Drupal.settings.fullcalendar.theme,
-    header: {
-      left: Drupal.settings.fullcalendar.left,
-      center: Drupal.settings.fullcalendar.center,
-      right: Drupal.settings.fullcalendar.right
-    },
-    eventClick: function(calEvent, jsEvent, view) {
-      if (Drupal.settings.fullcalendar.colorbox) {
-      // Open in colorbox if exists, else open in new window.
-        if ($.colorbox) {
-          $.colorbox({href:calEvent.url, iframe:true, width:'80%', height:'80%'});
+  $('#fullcalendar-content').hide(); // Hide the failover display.
+  
+  if($('.fc-content').length === 0) { // Prevents the fullcalendar being rendered twice while loading colorbox.
+    $('#fullcalendar').fullCalendar({
+      defaultView: Drupal.settings.fullcalendar.defaultView,
+      theme: Drupal.settings.fullcalendar.theme,
+      header: {
+        left: Drupal.settings.fullcalendar.left,
+        center: Drupal.settings.fullcalendar.center,
+        right: Drupal.settings.fullcalendar.right
+      },
+      eventClick: function(calEvent, jsEvent, view) {
+        if (Drupal.settings.fullcalendar.colorbox) {
+          // Open in colorbox if exists, else open in new window.
+          if ($.colorbox) {
+            var url = calEvent.url + " div#content";
+            $.colorbox({href:url, width:'800', height:'80%'});
+          } else {
+            window.open(calEvent.url);
+          }
         } else {
           window.open(calEvent.url);
         }
-      } else {
-        window.open(calEvent.url);
-      }
-      return false;
-    },
-    year: (Drupal.settings.fullcalendar.year) ? Drupal.settings.fullcalendar.year : undefined,
-    month: (Drupal.settings.fullcalendar.month) ? Drupal.settings.fullcalendar.month : undefined,
-    day: (Drupal.settings.fullcalendar.day) ? Drupal.settings.fullcalendar.day : undefined,
-    timeFormat: {
-      agenda: (Drupal.settings.fullcalendar.clock) ? 'HH:mm{ - HH:mm}' : Drupal.settings.fullcalendar.agenda,
-      '': (Drupal.settings.fullcalendar.clock) ? 'HH:mm' : 'h(:mm)t'
-    },
-    axisFormat: (Drupal.settings.fullcalendar.clock) ? 'HH:mm' : 'h(:mm)tt',
-    weekMode: Drupal.settings.fullcalendar.weekMode,
-    firstDay: Drupal.settings.fullcalendar.firstDay,
-    monthNames: Drupal.settings.fullcalendar.monthNames,
-    monthNamesShort: Drupal.settings.fullcalendar.monthNamesShort,
-    dayNames: Drupal.settings.fullcalendar.dayNames,
-    dayNamesShort: Drupal.settings.fullcalendar.dayNamesShort,
-    allDayText: Drupal.settings.fullcalendar.allDayText,
-    buttonText: {
-      today:  Drupal.settings.fullcalendar.todayString,
-      day: Drupal.settings.fullcalendar.dayString,
-      week: Drupal.settings.fullcalendar.weekString,
-      month: Drupal.settings.fullcalendar.monthString
-    },
-    events: function(start, end, callback) {
-      var events = [];
+        return false;
+      },
+      year: (Drupal.settings.fullcalendar.year) ? Drupal.settings.fullcalendar.year : undefined,
+      month: (Drupal.settings.fullcalendar.month) ? Drupal.settings.fullcalendar.month : undefined,
+      day: (Drupal.settings.fullcalendar.day) ? Drupal.settings.fullcalendar.day : undefined,
+      timeFormat: {
+        agenda: (Drupal.settings.fullcalendar.clock) ? 'HH:mm{ - HH:mm}' : Drupal.settings.fullcalendar.agenda,
+        '': (Drupal.settings.fullcalendar.clock) ? 'HH:mm' : 'h(:mm)t'
+      },
+      axisFormat: (Drupal.settings.fullcalendar.clock) ? 'HH:mm' : 'h(:mm)tt',
+      weekMode: Drupal.settings.fullcalendar.weekMode,
+      firstDay: Drupal.settings.fullcalendar.firstDay,
+      monthNames: Drupal.settings.fullcalendar.monthNames,
+      monthNamesShort: Drupal.settings.fullcalendar.monthNamesShort,
+      dayNames: Drupal.settings.fullcalendar.dayNames,
+      dayNamesShort: Drupal.settings.fullcalendar.dayNamesShort,
+      allDayText: Drupal.settings.fullcalendar.allDayText,
+      buttonText: {
+        today:  Drupal.settings.fullcalendar.todayString,
+        day: Drupal.settings.fullcalendar.dayString,
+        week: Drupal.settings.fullcalendar.weekString,
+        month: Drupal.settings.fullcalendar.monthString
+      },
+      events: function(start, end, callback) {
+        var events = [];
 
-      $('.fullcalendar_event').each(function() {
-        $(this).find('.fullcalendar_event_details').each(function() {
-          events.push({
-            field: $(this).attr('field'),
-            index: $(this).attr('index'),
-            nid: $(this).attr('nid'),
-            title: $(this).attr('title'),
-            start: $(this).attr('start'),
-            end: $(this).attr('end'),
-            url: $(this).attr('href'),
-            allDay: ($(this).attr('allDay') === '1'),
-            className: $(this).attr('cn'),
-            editable: $(this).attr('editable')
+        $('.fullcalendar_event').each(function() {
+          $(this).find('.fullcalendar_event_details').each(function() {
+            events.push({
+              field: $(this).attr('field'),
+              index: $(this).attr('index'),
+              nid: $(this).attr('nid'),
+              title: $(this).attr('title'),
+              start: $(this).attr('start'),
+              end: $(this).attr('end'),
+              url: $(this).attr('href'),
+              allDay: ($(this).attr('allDay') === '1'),
+              className: $(this).attr('cn'),
+              editable: $(this).attr('editable')
+            });
           });
         });
-      });
 
-      callback(events);
-    },
-    eventDrop: function(event, dayDelta, minuteDelta, allDay, revertFunc) {
-      $.post(Drupal.settings.basePath + '/fullcalendar/ajax/update/drop/'+ event.nid,
-        'field=' + event.field + '&index=' + event.index + '&day_delta=' + dayDelta + '&minute_delta=' + minuteDelta + '&all_day=' + allDay,
-        fullcalendarUpdate);
-      return false;
-    },
-    eventResize: function(event, dayDelta, minuteDelta, revertFunc) {
-      $.post(Drupal.settings.basePath + '/fullcalendar/ajax/update/resize/' + event.nid,
-        'field=' + event.field + '&index=' + event.index + '&day_delta=' + dayDelta + '&minute_delta=' + minuteDelta,
-        fullcalendarUpdate);
-      return false;
-    }
-  });
+        callback(events);
+      },
+      eventDrop: function(event, dayDelta, minuteDelta, allDay, revertFunc) {
+        $.post(Drupal.settings.basePath + '/fullcalendar/ajax/update/drop/'+ event.nid,
+          'field=' + event.field + '&index=' + event.index + '&day_delta=' + dayDelta + '&minute_delta=' + minuteDelta + '&all_day=' + allDay,
+          fullcalendarUpdate);
+        return false;
+      },
+      eventResize: function(event, dayDelta, minuteDelta, revertFunc) {
+        $.post(Drupal.settings.basePath + '/fullcalendar/ajax/update/resize/' + event.nid,
+          'field=' + event.field + '&index=' + event.index + '&day_delta=' + dayDelta + '&minute_delta=' + minuteDelta,
+          fullcalendarUpdate);
+        return false;
+      }
+    });
+  }
 
   var fullcalendarUpdate = function(result) {
     if ($('#fullcalendar-status').text() === '') {
@@ -95,7 +99,7 @@
     return false;
   });
 
-  //trigger a window resize so that calendar will redraw itself as it loads funny in some browsers occasionally
+  // Trigger a window resize so that calendar will redraw itself as it loads funny in some browsers occasionally.
   $(window).resize();
 }
 };
