javascript - Modal 触发时自动播放视频

标签 javascript jquery html css bootstrap-modal

我有一个模态。 Modal 中的视频演示。模态触发的视频是自动自动播放的。视频将在模态户外环境中关闭,视频应在模态打开时自动启动。但现在它无法按预期工作。

你认为我在哪里犯了错误?谢谢

<!-- Modal Trigger Button --> 
<div> <a data-toggle="modal" data-target="#arcaVideoModal" href="#"></div>


<!-- Modal-->
    <div id="arcaVideoModal"  class="modal fade bd-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="arcaVideoModalLabel" aria-hidden="true">
        <div class="modal-dialog modal-lg">
            <div class="modal-content">
                <div class="embed-responsive embed-responsive-16by9">
                    <video id="video1" width="320" height="240" controls>
                        <source src="/Documents/arca-cm18.mp4" type="video/mp4">
                    </video>
                </div>
            </div>
        </div>
    </div>


<script>
    $(document).ready(function () {

        $('#arcaVideoModal').on('shown.bs.modal', function () {
            $('#video1')[0].play();
        })
        $('#arcaVideoModal').on('hidden.bs.modal', function () {
            $('#video1')[0].pause();
        })
        $(window).resize(function () {

            $('#arcaVideoModal').on('shown.bs.modal', function () {
                $('#video1')[0].play();
            })
            $('#arcaVideoModal').on('hidden.bs.modal', function () {
                $('#video1')[0].pause();
            })
        });
    });
</script>

最佳答案

试试这个

$(document).ready(function () {
    $("#btn_play").on("click", function(){
      $('#arcaVideoModal').modal("show")
    })
    $('#arcaVideoModal').on('shown.bs.modal', function () {
        $('#video1')[0].play();
    });
    $('#arcaVideoModal').on('hidden.bs.modal', function () {
        $('#video1')[0].pause();
    });
    $(window).resize(function () {
        $('#arcaVideoModal').on('shown.bs.modal', function () {
            $('#video1')[0].play();
        })
        $('#arcaVideoModal').on('hidden.bs.modal', function () {
            $('#video1')[0].pause();
        })
    });
});

你犯了错误,因为你在 modal.show 上暂停视频并在 modal.hide 上播放它

供您引用:

我为你创建了一个 stackblitz

网址:https://stackblitz.com/edit/js-v1nl51

关于javascript - Modal 触发时自动播放视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54455149/

相关文章:

javascript - 如何在文档准备好时使 Jquery 可折叠面板折叠而不是展开?

javascript - Internet Explorer <视频> 更改来源

javascript - 如何解决 React 中的错误“警告 : React. createElement : type should not be null, 未定义”?

javascript - 如何修复此固定导航栏淡入

javascript - 我想在所有没有类 'block' 的 div 中附加提到的标签

javascript - 对 indexOf 在 JS 中的工作方式感到困惑

javascript - jQuery 刷新从 json 接收的数据

javascript - 通过使用 JavaScript/jQuery 调整窗口大小来激活和停用脚本

javascript - Plotly JavaScript - donut chart - Hoverinfo,尝试使用数组添加自定义定义 - 我的代码的小问题

html - HTML中id和name属性的区别