dojox flvideo widget在AJAX中销毁

时间:2009-08-27 21:03:42

标签: dojo

使用dojox.av.FLVideo小部件时,我遇到了一个无法手动销毁小部件的问题。简单的逻辑:

第一次AJAX通话 [检索带视频的部分页面A]

var videoDiv = document.createElement('div');
videoDiv.id = "vid";
mainContent.appendChild(videoDiv);
var newVideo = new dojox.av.FLVideo({initialVolume:.7, mediaUrl:'video/sample.flv', autoPlay:true, isDebug:true}, "vid");
//video plays and everything looks fine

第二次AJAX通话 [获取另一部分网页B替换视频]

var oldVideo = dijit.byId('vid');
oldVideo.destroy(); //should destroy this widget but doesn't

由于某种原因,这个小部件没有被破坏,导致问题,因为当我们回去执行AJAX调用并再次尝试页面A和视频时,它会抛出id已经存在的异常。 我也试过其他功能,比如我们destroyRecursive(),disconnect()但是没有一个工作,有没有人知道问题出在哪里?

干杯

彼得

1 个答案:

答案 0 :(得分:1)

试试这个:

var oldVideo = dijit.byId('vid');

oldVideo.destroy();

删除oldVideo;