如何在执行函数之前等待我的iframe加载?

时间:2013-04-29 15:36:52

标签: javascript jquery html

我在iframe中有一个表单。我从父窗口提交该表单。服务器向该iframe返回成功或失败标志。我想在关闭父窗口之前等待iframe获取成功或失败标志。

我正在尝试jquery .ready()但它不起作用。

我也不想把下面的代码放在我的iframe的onload中,并附带一些黑客来关闭父窗口。

 document.myFrame.submit(); // a function called submit() inside my iframe that submits a form in the iframe
      $(document.myFrame).ready(function(){
          var successError = document.myFrame.successError
          if(successError == "Y"){
              closeParentWindow();
          }else{
              alert(successError);
          }

      });

1 个答案:

答案 0 :(得分:2)

试试这个:

$(document.myFrame).load(function(){
      var successError = document.myFrame.successError
      if(successError == "Y"){
          closeParentWindow();
      }else{
          alert(successError);
      }

  });

Raw js例子:

var iframe = document.createElement('iframe');
iframe.addEventListener('load', function(){ alert('asd'); });
iframe.src = "http://www.youtube.com/embed/JRWox-i6aAk";
document.body.appendChild(iframe);

工作fiddle

正如您所说,它也可能是跨域资源共享问题