2012-10-01 73 views
12

我在頁面上嵌入了一個視頻html5標籤。當用戶點擊「播放按鈕」時,我需要觸發一個動作。但我無法找到如何將這與我的行爲聯繫起來。有什麼我需要的事件嗎?我正在使用jQuery ...視頻html5元素上的播放事件是什麼?

謝謝!

+0

但是你想觸發按鈕點擊新事件?或者你想綁定到'

回答

21

這個W3C演示頁面有幫助嗎? http://www.w3.org/2010/05/video/mediaevents.html看來這個比賽事件就是'玩'。

例如:

$('video').bind('play', function (e) { 
    // do something 
}); 

$('video').on('play', function (e) { 
    // do something 
}); 
5

我使用的代碼從以下page和剝離它:

<script language="javascript"> 
    document.addEventListener("DOMContentLoaded", init, false); 

    function init() { 
     var _video = document.getElementById("video"); 
     _video.addEventListener("playing", play_clicked, false); 
    } 

    function play_clicked() { 
     alert("play was clicked"); 
    } 
</script> 

<video id='video' 
    controls preload='none' 
    poster="http://media.w3.org/2010/05/sintel/poster.png"> 
    <source id='mp4' 
    src="http://media.w3.org/2010/05/sintel/trailer.mp4" 
    type='video/mp4'> 
    <p>Your user agent does not support the HTML5 Video element.</p> 
</video> 

希望我能幫上忙。

+0

答案中的演示頁面非常酷,並顯示可從視頻播放器收集的事件和數據。 –

2

HTML5事件有一個可以調用的onplay事件,不需要添加偵聽器。如果你不想使用JQuery,這是一種可以使用純JavaScript的方式。

var myVid = document.getElementById('videoId');  
if(myVid != null)//if possibility of no video loaded in DOM 
{ 
    myVid.onplay = function() { 
     //do something 
    }; 
}