6

I am using viewsslideshow and viewsslideshowjcarousel modules. I am displaying image thumbnail as jcarousel bottom of the Gallery slides using viewsslideshowjcarousel module. It's working perfectly.

Here is the problem. I would like to navigate to slide directly using the URL. Views slide show support this by passing #unique-id:slidenumber as discussed here. But, i can not able to slide automatically to the the thumbnail of the jcarosel pager that image belongs to. I see setting start option as discussed in Documentation should do the job. But adding that is breaking the carousel in below code inside views_slideshow_jcarousel.js file.

// Add views slieshow api calls for views slideshow jCarousel pager.
Drupal.behaviors.viewsSlideshowJcarouselPager = { 
  attach: function (context) {
    // Process pause on hover.
    $('.views_slideshow_jcarousel_pager:not(.views-slideshow-jcarousel-pager-processed)', context).addClass('views-slideshow-jcarousel-pager-processed').each(function() {
      // Parse out the unique id from the full id.
      var pagerInfo = $(this).attr('id').split('_');
      var location = pagerInfo[2];
      pagerInfo.splice(0, 3);
      var uniqueID = pagerInfo.join('_');
      $(this).jcarousel({        
        vertical: parseInt(Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location].orientation),
        scroll: parseInt(Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location].scroll),
        visible: parseInt(Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location].visible),
        wrap: Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location].wrap,
        animation: (isNaN(Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location].animation)) ? Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location].animation : parseInt(Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location].animation),
        initCallback: function(carousel) {
          Drupal.settings.viewsSlideshowJCarouselPager[uniqueID][location]['carouselObj'] = carousel;
        }
      });

      $(this).find('.views_slideshow_jcarousel_pager_item').each(function(index, pagerItem) {
        $(pagerItem).click(function() {
          Drupal.viewsSlideshow.action({ "action": 'goToSlide', "slideshowID": uniqueID, "slideNum": index });
        });
      });
    });
  }
};

Any idea how to start jcarosuel based on the slidenum passed in the url ?

1

Try to add a contextual filter to the view that sorts the results putting the desired element in the first position of the carousel.

There is a nice reference for that: http://www.metaltoad.com/blog/using-drupal-contextual-filters-views

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.