0
我有一個HTML5視頻,它顯示並在jquery拖放元素在其正確的插槽後播放。視頻播放時,我有一個腳本,用於監聽視頻上的時間更新,並將拖動的元素背景顏色更改爲高亮,然後根據時間回到原始顏色。HTML5視頻 - 時間更新和清理
現在的問題是,擦洗視頻時說向後完之後,拖拽元素都突出時的代碼是:
function play_vid(){
$("#slots").addClass('left');
$("#element1").position({my: "left top",at: "left top",of: "#slot_1"});
$("#element2").position({my: "left top",at: "left top",of: "#slot_2"});
$("#element3").position({my: "left top",at: "left top",of: "#slot_3"});
$("#element4").position({my: "left top",at: "left top",of: "#slot_4"});
$("#element5").position({my: "left top",at: "left top",of: "#slot_5"});
$(".video").show();
$("#v1").show();
v1.play();
document.getElementById('v1').addEventListener("timeupdate", function() {
$("#element1").removeClass('correct');
$("#element1").addClass('highlighted');
if(this.currentTime > 15) {
$("#element1").removeClass('highlighted');
$("#element1").addClass('correct');
$("#element2").removeClass('correct');
$("#element2").addClass('highlighted');
}
if(this.currentTime > 30) {
$("#element2").removeClass('highlighted');
$("#element2").addClass('correct');
$("#element3").removeClass('correct');
$("#element3").addClass('highlighted');
}
if(this.currentTime > 45) {
$("#element3").removeClass('highlighted');
$("#element3").addClass('correct');
$("#element4").removeClass('correct');
$("#element4").addClass('highlighted');
}
if(this.currentTime > 60) {
$("#element4").removeClass('highlighted');
$("#element4").addClass('correct');
$("#element5").removeClass('correct');
$("#element5").addClass('highlighted');
}
});
我怎樣才能讓這個只有擦洗視頻集錦元素根據以上時間?
見小提琴在http://jsfiddle.net/7YW59/
感謝您的Bemmu ......這當然可以是一種更好的處理方式,但我不確定這是否有助於解決問題。我已經創建了一個代碼小提琴,但它並沒有改變元素的類... – IlludiumPu36
對不起,我應該使用僞代碼或避免包括代碼。我試圖粗略地展示這個想法。 – Bemmu
感謝您的幫助Bemmu ...實際上,解決方案只是爲視頻中不應突出顯示的所有元素(不僅僅是前一個元素)移除突出顯示的類。所以你把這些元素分成時隙的想法是值得的。儘管如此,仍然要實施您的解決方案... 查看更新小提琴http://jsfiddle.net/AYXmD/ – IlludiumPu36