0

我正在开发一个包含两个视频的 iPad HTML 应用程序。HTML 代码是动态加载的。该页面有两个视频,其文本对应于它们。这些视频也只有两个控件。播放和暂停。但是我遇到的问题是视频只会在另一个播放时暂停。基本上在我的 if / else 语句中根本没有调用 else。这是我的代码。任何人都知道为什么尝试再次单击叠加层时它不会暂停?先感谢您!

$('div[class*="video-overlay"]').bind('mousedown', function() {

    var video       = $(this).next('video')[0];
    var text        = $(this).attr('data-play');

    if (video.paused) {

        video.play();

        $('p').addClass('fade');
        $('#' + text).removeClass('fade');

        $(this).removeClass('overlay');
        $('div[class*="video-overlay"]').not(this).addClass('overlay');

        $(this).children().removeClass('video-play');

        $('video').not($(this).next(el)).get(0).pause();

        $('.play').not($(this).children()).addClass('video-play');

        $(video).on('ended', function() {
            $(this).prev('div').children().addClass('video-play');
            video.pause();
        });

    } else {

        video.pause();
        console.log('Hey mom, I paused all by myself!');
    }

});
4

2 回答 2

0

没有你的html,我不能确定,所以我只能猜测。

var video       = $(this).next('video')[0];

将此行更改为

var video       = $(this).find('video')[0];

要获得更明确的答案,请提供您的 html 代码。

于 2012-05-31T04:24:44.400 回答
0

它实际上在我的 CSS 中。我没有在视频前面覆盖。所以我将 z-index 更改为更高的值并修复它。我前面有播放按钮,所以它正在播放视频,而不是覆盖。嗬!

于 2012-06-01T01:47:32.690 回答