Pregunta

Estoy usando el complemento jQuery llamado GalleryView, en su versión Beta3 (http://spaceforaname.com/galleryview).Está previsto que la versión Beta4 tenga controles integrados para reproducir / pausar la animación.Mi pregunta es:

Cómo emular controles de "reproducción" y "pausa" desde fuera del script sin la necesidad de modificar el código de GalleryView.¿Hay algún complemento para eso?¿O tal vez una acción indocumentada?

Durante la inicialización, es posible decidir si desea activar o desactivar la función de reproducción automática.

Si no hay ninguna acción / complemento disponible, ¿cómo lo resolvió?¿Puede compartir la modificación de GalleryView que aplicó?

Saludos, T.

¿Fue útil?

Solución

Resolví esto modificando el script de GalleryView original agregando lo siguiente:

  • variable paused dentro del script, que almacena el estado de pausa / reproducción (true si está en pausa, false si se está reproduciendo),
  • agregó la siguiente definición de devolución de llamada:

    /*
    **  playPause()
    **      Resume slideshow if paused, pause if slideshow playing.
     */
    function playPause() {
        if(!paused) {
            // Pause slideshow in 500ms. This allows for brief swipes of the mouse over the gallery without unnecessarily pausing it
            $(document).oneTime(0,"animation_pause",function(){
                $(document).stopTime("transition");
                paused = true;
            });
            $('.gv-nav-play-pause').removeClass('gv-nav-pause').addClass('gv-nav-play');
        } else {
            $(document).stopTime("animation_pause");
            if(opts.transition_interval > 0) {
                $(document).everyTime(opts.transition_interval,"transition",function(){
                    showNextItem();
                });
                paused = false;
            }
            $('.gv-nav-play-pause').removeClass('gv-nav-play').addClass('gv-nav-pause');
        }
    };
    
  • agregó un botón para reproducir / pausar, le dio estilo y le adjuntó la devolución de llamada playPause en click y algunos eventos táctiles (para permitir dispositivos táctiles).

Funcionó a las mil maravillas, sin fallos, pero es posible que el código no sea perfecto; tuve que usar el código original de GalleryView, que en sí mismo no es perfecto.

Otros consejos

Hasta ahora no he encontrado ninguna forma de desactivar la reproducción automática (también me gustaría esa opción).Tengo entendido que la próxima versión tendrá controles de jugador.A partir de esta publicación, todavía es inestable pero prometedor.Aquí hay un enlace a la página de demostración de la versión 3 Beta4 del autor de GalleryView:

http://spaceforaname.com/galleryview-3.0/testpage.html

Estoy usando la versión actual y necesitaba desactivar la reproducción automática en un control deslizante.Lo resolví poniendo un retraso de 10 minutos entre ciclos.Esto le dio tiempo al video de 9 minutos en una de las diapositivas para reproducirse.Un retraso más largo (30 minutos) desactivaría la reproducción automática.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top