2013-10-11 3 views
0

У меня есть iframe, и я перенаправляю страницы в iframe. Как получить событие для каждой загрузки страницы.Как узнать, что страница загружена

main.html

<html> 
<body> 
    <iframe src="http://www.child.html" id="childframe" style="height:100px"></iframe> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 

    <script> 
    $(window).load(function(){ 
     var Body = $("#childframe").contents().find("body"); 
     var Element = Body.find("tag"); 
     // page is redirecting to new page 
     $(Element[0].click()); 

     window.setTimeout(reallyNext, 1000); 
     function reallyNext() { 
      //how to know inner page is loaded 
      var result= Body.find("#tag1"); 
      //how to get element from anotherpage.html 

      $(result).bind('DOMSubtreeModified', function(event) {     
       //how to reach here 
      }); 
     }  
    }); 
    </script> 
</body> 
</html> 

child.html

<html> 
<head></head> 

<body> 
    <p><a href="../anotherpage.html"></a><br></p> 
</body> 
</html> 

скажите, пожалуйста, как знать, внутренняя страница IFRAME сделал загрузку?

ответ

0

Вы можете использовать загружаемый пареметр внутри тега тела, который запускается после загрузки страницы. Например:

<body onload="myJavascriptFunction();" > 
0
$('#childframe').ready(function() { 
    ... 
}); 

или

$('#childframe').load(function() { 
    ... 
}); 
0
<script language="javascript"> 
    iframe = document.getElementById("frameid"); 

    WaitForIFrame(); 

    function WaitForIFrame() { 
     if (iframe.readyState != "complete") { 
      setTimeout("WaitForIFrame();", 200); 
     } else { 
      done(); 
     } 
    } 

    function done() { 
     //some code after iframe has been loaded 
    } 
</script> 

Это должно работать

0

Вы можете подключить на яваскрипте событие <iframe /> элемента onLoad (как <iframe onLoad="myHandler" />, где MyHandler это ваша функция js), или, если вы используете jQuery Со следующим фрагментом:

$('#childframe').load(function() { 
    // your code handling the iframe loaded. 
}); 

Обратите внимание, что код должен быть частью страницы, которая содержит iframe не страницу в нем.

+0

thnx каждый корпус. – androidraj

Смежные вопросы