// Repaints the progress bar's filled-in amount based on the % of time elapsed for current video.
progressBar.change(function() {
var currentTime = $(this).val();
var totalTime = parseInt($(this).prop('max'), 10);
// Don't divide by 0.
var fill = totalTime !== 0 ? currentTime/totalTime : 0;
// EDIT: Added this check, testing with it now.
if (fill < 0 || fill > 1) throw "Wow this really should not have been " + fill;
var backgroundImage = '-webkit-gradient(linear,left top, right top, from(#ccc), color-stop(' + fill + ',#ccc), color-stop(' + fill + ',rgba(0,0,0,0)), to(rgba(0,0,0,0)))';
$(this).css('background-image', backgroundImage);
});
Sto riempiendo una barra di avanzamento nel tempo utilizzando il javascript sopra per modificare l'immagine di sfondo con una sfumatura.Esiste un limite alla frequenza con cui è possibile modificare l'immagine di sfondo di un elemento?
Estremamente intermittente: l'immagine di sfondo interrompe completamente il rendering. Ho inserito la registrazione in questo codice e tutto sembra funzionare correttamente. Non sto dividendo per 0, né è il mio riempimento 0, ma l'immagine di sfondo smette di mostrare.
Se ricarico l'elemento dom, riprende a funzionare! Quindi, mi chiedo se sto facendo qualcosa di veramente sbagliato qui. Forse non riesco a impostare l'immagine di sfondo in modo così continuo per ore?
MODIFICA: Ho intenzione di provare e ottenere un breve video clip con alcune registrazioni per evidenziare il problema. Potrebbe volerci un po 'per riprodurlo.
metto un punto di interruzione nel codice e rilevare il valore di riempimento ad un valore maggiore di 0 e minore di 1. In questo caso il suo valore era 0,6925
messa un punto di interruzione nel codice , rompendo il punto e quindi permettendo che l'esecuzione continui, il riempimento della barra di avanzamento riappare!
EDIT2: Ecco un video che ciò accada: http://screencast.com/t/DvzBr06f
No, non c'è limita il numero di volte in cui è possibile modificare una proprietà css. – adeneo
Buono a sapersi. Grazie. –
Qual è il valore esatto della variabile 'fill' quando ciò accade? Aggiungi un altro controllo e verifica se è mai stato attivato 'if (fill < 0 || fill > 1)' – Ma3x