Tengo un problema con el marcador, quiero que el marcador se pueda estirar para marcar cualquier parte de la barra de progreso
Como se muestra en el siguiente GIF
Pregunta: Quiero seleccionar cualquier punto en la barra de progreso y poder estirar el marcador, que puede ser múltiples puntos de marcador.
No sé cómo hacerlo con el siguiente código:
var player = videojs('demo');
player.markers({
markerStyle: {
'width':'9px',
'border-radius': '40%',
'background-color': 'orange'
},
markerTip:{
display: true,
text: function(marker) {
return "I am a marker tip: "+ marker.text;
}
},
breakOverlay:{
display: true,
displayTime: 4,
style:{
'width':'100%',
'height': '30%',
'background-color': 'rgba(10,10,10,0.6)',
'color': 'white',
'font-size': '16px'
},
text: function(marker) {
return "This is a break overlay: " + marker.overlayText;
},
},
markers: [
{time: 9.5, text: "this", overlayText: "1", class: "special-blue"},
{time: 16, text: "is", overlayText: "2"},
{time: 23.6,text: "so", overlayText: "3"},
{time: 28, text: "cool", overlayText: "4"}
]
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="http://vjs.zencdn.net/4.2/video.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/videojs-markers/0.7.0/videojs-markers.js"></script>
<link href="http://vjs.zencdn.net/4.2/video-js.css" rel="stylesheet"/>
<link href="https://cdnjs.cloudflare.com/ajax/libs/videojs-markers/0.7.0/videojs.markers.min.css" rel="stylesheet"/>
<video id="demo" width="400" height="210" controls class="video-js vjs-default-skin">
<source src="http://vjs.zencdn.net/v/oceans.mp4" type="video/mp4">
<source src="http://vjs.zencdn.net/v/oceans.webm" type="video/webm">
</video>
javascript
jquery
html
video.js
EaBengaluru
fuente
fuente
Respuestas:
Una forma de hacerlo es engancharse
mousedown
ymousemove
eventos en la barra de búsqueda. Agregue el marcador en el mousedown con una clase personalizada. Luego, en mousemove, calcule el movimiento y agregue el ancho al elemento marcador utilizando la clase personalizada.Ver este ejemplo:
fuente
donde desee el puntero, simplemente ponga tiempo en el
time: 20.5
y aumente el ancho delmarkerStyle: { 'width': '190px' }
, para que obtenga una línea larga en la barra de progreso del video.aquí vamos
Puedes estudiar aquí más sobre todos los documentos .
Si tiene algún problema, infórmenos.
Feliz codin '!
fuente