如何在iPad上的Quicktime视频上获取javascript点击事件?

时间:2013-06-24 16:39:08

标签: html5 ipad cordova html5-video quicktime

我正在使用Apache Cordova(phonegap)创建一个应用程序并遇到了问题。

在我的应用中,我有自动播放的音频,当有人点击通过jQuery动态插入页面的视频元素时,我需要停止播放。

要查看我遇到的问题,请在iPad中访问此页面,看看没有任何附加事件被触发。 http://jsfiddle.net/PQqMC/4/

该示例包含通过jQuery的“.on()”方法和“.bind()”方法以及内联事件附加的事件。它还会尝试附加点击和触摸事件。

iPad上的Safari和Chrome都会出现这种情况。 此外,有时在非动态插入的视频上也会采用这种方式。

任何捕捉点击/触摸事件的方式?

以下是jsFiddle页面中的代码:

$('#video_cont video').on( 'click', function(){
    alert("clicked (binded before)");   
});
$('#video_cont video').on( 'touchstart', function(){
    alert("touched (binded before)");   
});
$('#video_cont2 video').on( 'click', function(){
    alert("clicked2 (binded before)");   
});
$('#video_cont2 video').on( 'touchstart', function(){
    alert("touched2 (binded before)");   
});

$(document).ready(function(){
$('#video_cont').html( '<video ontouchstart="alert(\'ontouchstart\')" onclick="alert(\'onclick\')" src="http://techslides.com/demos/sample-videos/small.mp4" controls></video>' );

    $('#video_cont video').bind( "click", function(){
        alert("clicked (binded after)");   
});    
    $('#video_cont video').bind( "touchstart", function(){
        alert("touched (binded after)");   
    });
    $('#video_cont2 video').bind( "click", function(){
        alert("clicked2 (binded after)");   
    });    
    $('#video_cont2 video').bind( "touchstart", function(){
        alert("touched2 (binded after)");   
    });
});

1 个答案:

答案 0 :(得分:1)

作为替代方案,我设法加入“播放”事件以跟踪有人点击并启动视频。对于我的特定用例,这就足够了。