jquery-ui - 如何在jQuery对话框中关闭嵌入式YouTube视频

标签 jquery-ui youtube jquery-ui-dialog

我将此youtube视频嵌入到jQuery对话框中。对话框的创建方式如下:

$(function() {
    $.prepare_dialog2 = function() {
        $('body').append('<div class="dlgVid"></div>');
        $('.dlgVid').dialog({ autoOpen: false,  modal: true, position: ['center',100], resizable: false, width: 640 });
    }
    $.dlgVid = function(url,ttl) {
        $.ajax({
            type: 'POST', url: url,
            success: function(data) { $('.dlgVid').dialog('open').dialog('option','title',ttl).html(data);},
            error: function() { alert('Oops! An error occured. Please try again or contact us if the problem persists.');}
        });
    }

    $.prepare_dialog2();    
});

并使用$.dlgVid函数调用。在对话框窗口中,有一个关闭链接,单击该链接可关闭对话框,如下所示:
$('.dlgCloser').live('click',function(){
    $('.dlgVid').dialog('close');
});

,当我关闭对话框时,问题是,视频继续播放。我需要停下来。我尝试了一下,但没有成功(因为视频仍在播放中,我可以听到音频):
$('.dlgCloser').live('click',function(){
    $('.dlgVid').dialog('destroy');
    $.prepare_dialog2();
});

是否有人停止播放或为什么不从DOM中删除对话框?

最佳答案

我认为这种破坏实际上是将其隐藏起来,因此它为何仍在播放。试试这个:

$('.dlgCloser').live('click',function(){
    $('.dlgVid').remove();
});

尽管这可能会解决问题,但是这也会删除.dlgVid的每个实例

另外,从jQuery库中取消使用.live()。您应该使用.on()

关于jquery-ui - 如何在jQuery对话框中关闭嵌入式YouTube视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14149223/

相关文章:

jquery - 如何替换 jquery-ui 中的一个图标?

jQuery UI 对话框不会关闭

javascript - AngularJS 和 JQuery UI 选项卡

jquery - ASP.net MVC 和 jQueryUI 困境

javascript - 如何将对话框定位到窗口的中心

YouTube Data API v3 Queries Per Day 配额问题

api - YouTube API用于获取评论的回复

youtube - 如何使用youtube api v3获取我所有的订阅 channel

javascript - jquery 对话框 - 希望弹出窗口内的单选按钮能够输入值

javascript - 目录列表随机显示在对话框内的 jQuery UI 选项卡中