2013-01-03 65 views
1

我將這個YouTube視頻嵌入到jQuery對話框中。對話框如下創建:如何在jQuery對話框中關閉嵌入的YouTube視頻

$(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?

回答

0

我認爲這個摧毀實際上是隱藏它,爲什麼它仍然在玩。試試這個:

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

儘管這可能會解決問題,這也將刪除的.dlgVid

而且每個實例,使用.live()從jQuery庫depracated。您應該使用.on()