deshabilitar la reproducción / pausa en video incrustado usando el reproductor JW
-
27-10-2019 - |
Pregunta
Estoy usando el reproductor JW (v 5.8) para insertar un video.Y quiero hacerlo para que el inicio automático esté habilitado, permitiendo que el video comience a reproducirse tan pronto como se cargue la página, la barra de control esté deshabilitada para que un espectador no pueda buscar un punto aleatorio en un video y la función de reproducción / pausa al hacer clicel video está deshabilitado.Para incrustar el video mp4, estoy usando el reproductor JW. Logré realizar las primeras 2 tareas, pero para deshabilitar la función de reproducción / pausa al hacer clic en la pantalla, estoy tratando de usar el complemento clickproxy y no funciona.Pego mi código a continuación:
<div id="mediaplayer">JW Player goes here</div>
<script type="text/javascript" src="jwplayer.js"></script>
<script type="text/javascript">
jwplayer('mediaplayer').setup({
'flashplayer': 'player.swf',
'file': 'video.mp4',
'controlbar': 'none',
'width': '1000',
'height': '1000',
'plugins': 'clickproxy',
'clickproxy.listener': 'clickListener',
'autostart': 'true'
});
function clickListener(obj)
{
}
</script>
En este momento con este código, el video se carga, pero ni siquiera comienza a reproducirse, y hacer clic en el video no hace nada debido al complemento clickproxy.De todos modos para lograr lo que quiero? Soy un novato en javascript, por lo que cualquier ayuda será realmente apreciada.
¡Gracias!
Solución
Ahhh, sí, solía haber una funcionalidad en el reproductor para hacer esto (sobre ignorar el clic) pero parece que se sigue eliminando.
Aquí está la solución que acabo de implementar y que funciona para mí, simplemente conecto el evento de javascript onPause y comienzo la reproducción multimedia nuevamente.
<script type='text/javascript'>
jwplayer('mediaspace').setup({
'flashplayer': '/jw/player.swf',
'file': 'http://d3usowdy51yate.cloudfront.net/your-mp4-goes-here.mp4',
'autostart': 'true',
'icons': 'true',
'stretching': 'fill',
'controlbar': 'none',
'width': '640',
'height': '360',
events: {
onPause: function(event) {
jwplayer('mediaspace').play();}
}
});
</script>
Otros consejos
Intente poner un div transparente sobre el reproductor con la misma dimensión del reproductor.
Puede usar la propiedad CSS pointer-events en #mediaplayer
para evitar que el evento de clic pase al video:
#mediaplayer {
pointer-events: none;
}
También puede abusar del evento onPause
como respaldo para navegadores más antiguos <IE9
, diciendo;reproducir el video si se ejecuta el evento de pausa:
jwplayer('mediaplayer').setup({
flashplayer: 'player.swf',
file: 'video.mp4',
controlbar: 'none',
width: '1000',
height: '1000',
autostart: 'true',
events: {
onPause: function() {
this.play(true);
}
}
});