Forum Moderators: open
var newelement=document.createElement("<script type='text/javascript'>"+page_request.responseText+"</script>")
document.getElementById(containerid).appendChild(newelement)
var ajaxjsfetcher={
loadingmessage: "<img src='loading.gif' /> Requesting content...",
exfilesadded: "",
connect:function(containerid, jsfiles){
for (var i=0; i<jsfiles.length; i++){
var page_request = false
var bustcacheparameter=""
if (window.XMLHttpRequest) // if Mozilla, IE7, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE6 or below
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
}
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
var ajaxfriendlyurl=jsfiles[i].replace(/^http:\/\/[^\/]+\//i, "http://"+window.location.hostname+"/")
page_request.onreadystatechange=function(){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1)){
var newelement=document.createElement("<script type='text/javascript'>"+page_request.responseText+"</script>")
document.getElementById(containerid).appendChild(newelement)
}
}
document.getElementById(containerid).innerHTML=ajaxjsfetcher.loadingmessage //Display "fetching page message"
page_request.open('GET', ajaxfriendlyurl, true)
page_request.send(null)
}
},
load:function(containerid, jsfiles){
var jsfiles=(typeof jsfiles=="undefined" || jsfiles=="")? [] : jsfiles
this.connect(containerid, jsfiles)
}
} //End object
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="ajaxjsfetcher.js"></script>
</head>
<body>
<div id="ds">
TEST1
TEST2
<br/><br/><br/><br/><br/><br/><br/>
TEST3
</div>
<div class="moduletable" id="az_menu">
TEST4
</div>
<div id="sds">
TEST5
TEST6
<br/><br/><br/><br/><br/><br/><br/>
</div>
<script language="javascript" type="text/javascript">
ajaxjsfetcher.load("az_menu", ["az.js","RAz.js"])
</script>
TEST7
TEST8
</body>
</html>
As a whole case, do you agree with what I am doing in the page? (I mean using AJAX to load the huge scripts after the page loading to decrease the first loading time!)