简体   繁体   中英

External php page taking too long to parse and load with javascript

I have a code that is supposed to get an external page (In this cage, php) parse and load inside another page, it's like an iframe, but it uses javascript. The code is working, but it's the last thing that is executed on the page, it has to wait everything on the whole page to load, so it can be executed. What I need to achieve is that I need it to load with the page, or before the page loads.

I believe it's because of the even window.addEventListener .

  <div style="min-height:300px;
display: block;">

<script type="text/javascript">
function loadXMLDoc()
{

var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("myDiv020103").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","http://www.jonasweb.net/samples.php",true);
xmlhttp.send();
}

 if(window.addEventListener){
    window.addEventListener('load',loadXMLDoc,false); //W3C
}
else{
    window.attachEvent('onload',loadXMLDoc); //IE
}

</script>
<div width="100%" id="myDiv020103"></div>
</div>
<div style="clear:both"></div>

I tried creating a fidle, but it's not working, http://jsfiddle.net/5wcncs1x/ It only works on a host.

I found out by myself. Just had to change:

if(window.addEventListener){
    window.addEventListener('load',loadXMLDoc,false); //W3C
}
else{
    window.attachEvent('onload',loadXMLDoc); //IE
}

for

document.addEventListener("DOMContentLoaded",  loadXMLDoc, false);document.addEventListener("DOMContentLoaded",  loadXMLDoc, false);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM