动态创建元素的视频addEventListener

时间:2011-03-16 02:03:34

标签: javascript jquery events html5 video

你知道我为什么会收到错误“无法创建null的事件监听器”:

    var my;
    my.newVidObj = document.createElement('video');
    my.newVidObj.src = "vid-source.webm";
    my.newVidObj.load();        
    my.newVidObj.addEventListener("play", function() {
        // Do something
    }, false);  

另外,有没有办法在jquery对象上使用视频标记方法(例如,通过jquery创建视频标记)?

我编辑了以下答案是正确的,但需要进行同行评审。这是解决方案:

var vid = $("<video />", {
    id: "my-HTML5-video",
    src: "video.webm"
}).bind("play", function(){
    alert('test');
}).appendTo("body")[0].play();

1 个答案:

答案 0 :(得分:3)

查看以下链接:

http://www.chipwreck.de/blog/2010/03/01/html-5-video-dom-attributes-and-events/ http://www.dev.opera.com/articles/view/introduction-html5-video/ http://www.chipwreck.de/blog/2010/02/23/html-5-video-test-area/

我认为应该是:

var vid = $("<video />", {
    id: "my-HTML5-video",
    src: "vid-source.webm",
});

vid.appendTo("body");

vid[0].play = function(){
    alert("yaaay!");
};

OP的更正:

var vid = $("<video />", {
    id: "my-HTML5-video",
    src: "video.webm"
}).bind("play", function(){
    alert('test');
}).appendTo("body")[0].play();