日期:2014-05-16  浏览次数:20427 次

JS同步問題
function f1(){
   refresh();//刷新href.jsp頁面
   其他函數
}
function refresh(){
    window.frames['iframename'].location.href = '/../../href.jsp';
}
在調用f1()時總是先執行其他函數再回來執行refresh(),怎麼讓refresh()執行完再執行下面的語句
javascript

------解决方案--------------------
顶一下,我也不是很理解你说的,坐等高手解答。
------解决方案--------------------
其他函数...

function others(){
其他函数;
}


refresh();//刷新href.jsp頁面
setTimeout(others,0);

试试这个
------解决方案--------------------
在这个页面 /../../href.jsp 
window.onload = function(){
    window.parent.回调方法();
}

主页面写个回调函数
function 回调函数{
   //f1里面的 其他函數
}
------解决方案--------------------
  window.frames['iframename'].onload=function(){

}
------解决方案--------------------
引用:
  window.frames['iframename'].onload=function(){

}

就是这样,我给整理一下

function f1(){
   refresh();//刷新href.jsp頁面
   window.frames['iframename'].onload=function(){
      其他函數
   }
}
function refresh(){
    window.frames['iframename'].location.href = '/../../href.jsp';
}

------解决方案--------------------
JS是顺序执行的啊。。

<!doctype html>
<html>
<head>
<script type="text/javascript">
alert("a");
</script>
</head>
<body onload="alert('c');">
<script type="text/javascript">
alert("b");
</script>
</body>
</html>