diff --git a/modules/patched/jcarousel/js/jcarousel.js b/modules/patched/jcarousel/js/jcarousel.js
index cd00281..c0ff4e2 100644
--- a/modules/patched/jcarousel/js/jcarousel.js
+++ b/modules/patched/jcarousel/js/jcarousel.js
@@ -22,6 +22,30 @@ Drupal.behaviors.jcarousel.attach = function(context, settings) {
       return;
     }
 
+    var activeLi = jQuery(jQuery(".jcarousel .active").closest("li").get(0)),
+        jcarousel = jQuery('.jcarousel li'),
+        index = jcarousel.index(activeLi) + 1;
+
+    function determineStartItem(itemIndex) {
+        var start = 1;
+        if (itemIndex >=0 && itemIndex < 8) {
+            return start;
+        } else {
+            itemIndex -= 7;
+            start+=7;
+            while (itemIndex > 6)
+            {
+                start+=6;
+                itemIndex -= 6;
+            }
+            return start - 1;
+        }
+    };
+
+    if (options.start) {
+        options.start=determineStartItem(index);
+    }
+
     // Callbacks need to be converted from a string to an actual function.
     $.each(options, function(optionKey) {
       if (optionKey.match(/Callback$/) && typeof options[optionKey] == 'string') {
