• Resuelto tvalades

    (@tvalades)


    Buenos días, qué tal?
    Hace unas semanas realicé un diseño para la home de la página que añado en el que las secciones contienen un video de fondo que no se reproduce hasta que haces hover y deja de reproducirse cuando sales de la sección.
    Lo dejé funcionando perfectamente hasta ayer que me encontré con que el efecto no lo estaba haciendo.

    Uso Elementor para maquetar la web por lo que añado la fila a la que le pongo el video de fondo y le añado la clase ‘video’.

    Creo un fichero video.js en la carpeta assets/js de mi tema con el sigueinte código:

    jQuery(document).ready(function() {
    
    $("video").removeAttr("autoplay");
    var figure = $(".video").hover( hoverVideo, hideVideo );
    
    function hoverVideo(e) {  
        $('video', this).get(0).play(); 
    }
    
    function hideVideo(e) {
        $('video', this).get(0).pause(); 
    }
    });

    y en el functions.php de mi tema añado:

    add_action('wp_enqueue_scripts', 'video_js');
    function video_js() {
        wp_enqueue_script( 'video', get_template_directory_uri() . '/assets/js/video.js', array(), '1.0.0', true );
    } 

    No se el motivo por el que dejó de funcionar. Es un entorno de pruebas en el que no se ha realizado ninguna actualización ni cambio desde que se realizó ese diseño.

    Gracias por la ayuda

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 7 respuestas - de la 1 a la 7 (de un total de 7)
  • Moderador almendron

    (@almendron)

    ¿Has probado a desactivar el plugin Autoptimize?

    En consola aparece este error:

    Uncaught TypeError: $ is not a function
        <anonymous> https://pruebas.neuraces.es/wp-content/cache/autoptimize/js/autoptimize_28b4f2f3c89b2d41ea6025d717ced05f.js:8
        jQuery 2
    autoptimize_28b4f2f3c89b2d41ea6025d717ced05f.js:8:36
        <anonymous> https://pruebas.neuraces.es/wp-content/cache/autoptimize/js/autoptimize_28b4f2f3c89b2d41ea6025d717ced05f.js:8
        jQuery 2

    Deshabilitar «JavaScript agregado» (o cambiar a «no agregar sino aplazar») probablemente ayudará. Alternativamente, puede intentar excluir wp-content/themes/hello-elementor/assets/js/video.js o wp-content/themes/hello-elementor/ de la optimización JS.

    Frank, usando Google Translate 🙂

    Iniciador del debate tvalades

    (@tvalades)

    Hola @almendron y @optimizingmatters gracias por vuestros comentarios.
    Si, lo primero que hice según vi que dejó de funcionar loq ue había hecho era desactivar todo lo que tuviera que ver con caché, automatización etc.

    @optimizingmatters he probado lo que me dices, he incluido las rutas a excluir y nada…
    Sigue igual

    De hecho, veo el mismo error cuando Autoptimize está desactivado (con el parámetro en la URL, ver captura de pantalla), por lo que el problema parece no deberse a la configuración de Autoptimize. Tendrá que ponerse en contacto con el tema Elementor, ya que el archivo video.js de su tema está generando ese error.

    Iniciador del debate tvalades

    (@tvalades)

    No se yo si por esa vía de escribir al soporte de hello elementor voy a conseguir algo…
    He visto los debates y hay muy poca interactividad y respuestas en ese foro.
    Y los que están resueltos casi siempre es porque la misma persona que ha abierto el hilo lo ha solucionado.

    Aún así lo he intentado. He abierto el hilo en ese foro a ver que tal.

    Lo que siempre me sorprende con estas cosas es que un día las dejas funcionando y al día siguiente sin tocar nada te encuentras con que ha dejado de funcionar…

    Iniciador del debate tvalades

    (@tvalades)

    SOLUCIONADO!

    He instalado el plugin jquery updater y se ha solucionado.

    Gracias por el tiempo

    👍

Viendo 7 respuestas - de la 1 a la 7 (de un total de 7)
  • El debate ‘Hover video dejó de funcionar’ está cerrado a nuevas respuestas.