//最小化,最大化
function Layer_HideOrShow(cur_div,cur_span){
var obj=$("#vcastr3");
var current=document.getElementById(cur_div);
if(current.style.display=="none"){
current.style.display ="block";
document.getElementById(cur_span).className="closeDiv";
obj.prependTo(current); //目前位置
}
else{
current.style.display ="none";
document.getElementById(cur_span).className="openDiv";
obj.remove();
/*obj.prependTo(current);*/
}
}
需求:当一个层最小化时,它里面的flash被移除(停止播放);当层恢复大小后,又重新载入flash.现在的问题是obj.prependTo(current); 在当前位置不行,放在注释的位置就可以。求教各位高手。

解决方案 »

  1.   


    function Layer_HideOrShow(cur_div,cur_span){
    var obj=$("#vcastr3"), temp = $("#vcastr3");
    var current=document.getElementById(cur_div);
    if(current.style.display=="none"){
    current.style.display ="block";
    document.getElementById(cur_span).className="closeDiv";
    obj.prependTo(current); //目前位置
    }
    else{
    current.style.display ="none";
    document.getElementById(cur_span).className="openDiv";
    obj.remove();//这里obj已经不存在了,所以下面不能调用obj的相关方法
    temp.prependTo(current);
    }
    }
      

  2.   

    obj.remove(); 应该替换成current.empty();
    或者 obj.prependTo(current); 替换成 obj.one(true).prependTo(current); 
    var obj=$("#vcastr3")
    obj.remove(); 
    你实际是上 把 ID为 vcastr3 的对象 从你的DOM中删除了.
    再次 var obj=$("#vcastr3") 这时候是取到不对象的.