2014-02-19 52 views
0

我遇到了jquery ui对话框的问题。 一旦关闭它就无法打开。以下是我试过jquery ui对话框无法打开两次

HTML:

<div id="videodialog" style="display:none;"> 
    <div style="top:0%; right:1%; position:absolute; cursor:pointer;" 
    class="videodialogremoveclass"><img id="dialogremove" src="image/bdelete.png"  
    height="15" /></div> 
    <iframe id="video" width="635" height="360" 
    src="http://www.youtube.com/embed/b16V25eNyJY" frameborder="0" allowfullscreen> 
    </iframe> 
    </div> 

的jQuery:

$('#videodialog').dialog({ 
     autoOpen: false, 
      height: 380, 
      width: '50%', 
      position:[285,140], 
      modal:true, 
      resizable: false, 
      draggable: false, 
      beforeClose: function(){ $(this).remove(); } 
    }); 
    $('#videodialog').dialog("open"); 
    e.preventDefault(); 

任何帮助,请:)

回答

1

删除下面的行,它将关闭时从DOM中删除对话框。

beforeClose: function(){ $(this).remove(); } 

继续...

$('#videodialog').dialog({ 
     autoOpen: false, 
      height: 380, 
      width: '50%', 
      position:[285,140], 
      modal:true, 
      resizable: false, 
      draggable: false, 
      open: function() { $("#video").attr('src','http://www.youtube.com/embed/b16V25eNyJY'); } 
      beforeClose: function(){ $("#video").attr('src',''); } 
    }); 
+0

,但如果我不把那个,音频仍然发挥即使我关闭对话框。 – Vidia

+0

您需要删除iframe的src以停止播放视频并在打开对话框时再次重新设置。 –

+0

yeahhh它的工作..谢谢一吨:) – Vidia

0

关闭事件之前删除

$(this).remove(); 

0

为达到这一目的,你写了这行

e.preventDefault(); 
$(this).remove(); 

如果不需要,然后删除,然后再试一次。