我試圖綁定使用jQuery play
/pause
和ended
事件,但有一個問題:綁定播放/暫停/端使用jQuery
我用鼠標右鍵點擊視頻,然後選擇播放或暫停圖標正確更改。當我點擊播放按鈕時,它會變爲暫停,但如果我點擊暫停按鈕繼續播放視頻,它不會再變爲播放。
誰能告訴我我哪裏出錯了嗎?
這裏是我的代碼:
var PlayVideo = function() {
if ($('#video').attr('paused') == false) {
$('#video').get(0).pause();
} else {
$('#video').get(0).play();
}
};
$('#playbtn').click(PlayVideo);
$('#video').click(PlayVideo);
$('#video').bind('play', function() {
$('.playbtn').addClass('pausebtn');
});
$('#video').bind('pause', function() {
$('.playbtn').removeClass('pausebtn');
});
$('#video').bind('ended', function() {
$('.playbtn').removeClass('pausebtn');
});
CSS:
.playbtn {
display: block;
width: 32px;
height: 32px;
margin-left: 10px;
background: url('../images/play.png') no-repeat;
opacity: 0.7;
-moz-transition: all 0.2s ease-in-out; /* Firefox */
-webkit-transition: all 0.2s ease-in-out; /* Safari and Chrome */
-o-transition: all 0.2s ease-in-out; /* Opera */
transition: all 0.2s ease-in-out;
}
.pausebtn {
display: block;
width: 32px;
height: 32px;
margin-left: 10px;
background: url('../images/pause.png') no-repeat;
opacity: 0.7;
-moz-transition: all 0.2s ease-in-out; /* Firefox */
-webkit-transition: all 0.2s ease-in-out; /* Safari and Chrome */
-o-transition: all 0.2s ease-in-out; /* Opera */
transition: all 0.2s ease-in-out;
}
@ m90-感謝您提及它。錯過它是一個拼寫錯誤。所以在視頻結束後如何更改圖標。點擊播放btn後,它會發生變化,但它不會跳轉。 – coder 2012-03-26 14:47:55
我用我的css部分更新了我添加圖標的地方。 – coder 2012-03-26 14:52:55
@DotNetter除了可以將第二類減少到'background:'行(其餘部分是相同的)這個事實之外,CSS看起來還可以。你有沒有檢查過。 「結束」事件真的發生了,b。如果新的'背景'規則沒有被其他風格覆蓋? – m90 2012-03-26 15:02:38