【问题标题】:Change iframe youtube src with jquery - IE8 Error使用 jquery 更改 iframe youtube src - IE8 错误
【发布时间】:2013-02-23 02:43:35
【问题描述】:

我正在使用以下代码将不同的 youtube 视频加载到 Twitter Bootstrap 模式中。为什么 IE8 是唯一不加载 youtube 视频的浏览器?它只显示一个黑色的 div,视频通常会在其中显示。我正在处理的页面上有更多视频要上传,还有很多额外的脚本,所以我试图让它尽可能灵活和轻量级。任何建议,将不胜感激。谢谢! jsfiddle 在底部。

<div id="Videos">
    <a data-source="http://www.youtube.com/embed/z4Ezruu1oeQ" href="#" class="videoThumbnail">
        <img src="http://placehold.it/200x100&text=Video%20Thumbnail%20One"></a>

    <a data-source="http://www.youtube.com/embed/3tYrd4tPVXs" href="#" class="videoThumbnail">
        <img src="http://placehold.it/200x100&text=Video%20Thumbnail%20Two"></a>

</div>


<div id="videoModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="videoModalLabel" aria-hidden="true">
    <div class="modal-body">
        <div class="video-container">
            <iframe width="520" height="390" frameborder="0" allowfullscreen=""></iframe>
        </div>
    </div>
    <div class="modal-footer">
        <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
    </div>
</div>

Javascript:

$('.videoThumbnail').click(function(e) {
    e.preventDefault();
    var src = $(this).data('source');
    $('#videoModal').modal('show');
    $('#videoModal iframe').attr('src', src);
});

$('#videoModal button').click(function () {
    $('#videoModal iframe').removeAttr('src');
});

http://jsfiddle.net/curly33/LTxm7/

【问题讨论】:

    标签: javascript jquery iframe twitter-bootstrap custom-data-attribute


    【解决方案1】:

    我建议让 html 完成这项工作。

    <a href="http://www.youtube.com/embed/z4Ezruu1oeQ" target="videoIframe" class="videoThumbnail">
    

    <iframe name="videoIframe" width="520" height="390" frameborder="0" allowfullscreen=""></iframe>
    

    对js的小修改:

    $('.videoThumbnail').click(function(e) {
        $('#videoModal').modal('show');
    });
    $('#videoModal button').click(function () {
        $('#videoModal iframe').removeAttr('src');
        // ^^ is this really needed? ^^
    });
    

    http://jsfiddle.net/LTxm7/3/

    【讨论】:

    • 那会做的!谢谢。单击关闭按钮时,我正在使用脚本的底部使视频停止播放。我得想办法让它现在停止播放。
    • 这就是我把它留在里面的原因,我不确定。留下它应该继续做它以前做的事情。
    • 对于遇到此问题的其他人,我将底部代码更改为 $('#videoModal').on('hide', function () { $('#videoModal iframe').removeAttr('src'); }); 以便视频将停止播放,但模式已关闭
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-01
    • 2014-06-19
    • 1970-01-01
    • 1970-01-01
    • 2011-04-13
    • 2018-09-30
    • 2014-09-08
    相关资源
    最近更新 更多