drupal 7 – Cómo configurar la diapositiva de inicio para las vistas de la presentación de diapositivas jcarousel

Pregunta:

Estoy usando los módulos viewsslideshow y viewsslideshowjcarousel. Estoy mostrando la miniatura de la imagen como jcarousel en la parte inferior de las diapositivas de la Galería usando el módulo viewsslideshowjcarousel. Funciona perfectamente.

Aqui esta el problema. Me gustaría navegar para deslizar directamente usando la URL. La presentación de diapositivas de vistas respalda esto pasando # id-única: número de deslizamiento como se explica aquí . Pero no puedo deslizarme automáticamente a la miniatura del paginador jcarosel al que pertenece la imagen. Veo que la opción de inicio de configuración como se explica en la Documentación debería hacer el trabajo. Pero agregar eso es romper el carrusel en el siguiente código dentro del archivo views_slideshow_jcarousel.js.

// 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 });
        });
      });
    });
  }
};

¿Alguna idea de cómo iniciar jcarosuel basado en el slidenum pasado en la url?

Respuesta:

Intente agregar un filtro contextual a la vista que ordene los resultados colocando el elemento deseado en la primera posición del carrusel.

Hay una buena referencia para eso: http://www.metaltoad.com/blog/using-drupal-contextual-filters-views

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım