ondemand-javascript-loader
Gesponsorde koppelingen
PHP script bestanden
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<? // <<< voor syntax highlighting. Dit is een javascript functie.
var load = {
/*
load.js( string/array FILE [, function ONCOMPLETE] [, string/number CACHEID] )
FILE: bestandsnaam/bestandsnamen van het script.
ONCOMPLETE: functie die uitgevoert moet worden wanneer het bestand/de bestanden klaar zijn met laden.
CACHEID: geef een id op. Verander het id om de browser een nieuwe versie van het bestand te laten laden. Je kan als Id een MD5 hash van het bestand meegeven.
In debugfase kan je ook gewoon het resultaat van Math.random(); opgeven om iedere keer een vers bestand binnen te halen.
Cache-ID kan bestaan uit alles wat om te zetten is tot een tekenreeks, zoals een getal of tekenreeks. Array's worden NIET automatisch omgezet.
Je kan een_array.join("-"); gebruiken om een array om te zetten tot een tekenreeks.
*/
js:function(files,oncomplete,cacheid) {
if(typeof files=='string') {
files = [files];
} else if(typeof(files)!='object'
|| !(files instanceof Array)) {
throw '1st argument should be an instance of Array or String.';
return false;
} else if(files.length == 0) {
throw '1st argument is an empty Array. No files to load.';
return false;
}
if(cacheid !== undefined
&& cacheid !== null
&& cacheid !== false
&& cacheid !== 0) {
var cacheid = '?'+cacheid.toString();
} else {
var cacheid = '';
}
var c = 0;
var check = function(){
c++;
if(c==files.length){
oncomplete();
}
};
for(var x=0;x<files.length;x++) {
var file = files[x].toString() + cacheid;
var elem = document.createElement('script');
elem.setAttribute('type','text/javascript');
elem.setAttribute('src',file);
if(typeof oncomplete=='function') {
if(elem.onreadystatechange===null
&& elem.onload===undefined) {
elem.onreadystatechange=function() {
if(this.readyState=='loaded'
|| this.readyState=='complete') {
check();
}
}
} else {
elem.onload=check;
}
}
document.getElementsByTagName('head')[0].appendChild(elem);
var tempfunc=(typeof window.onunload=='function'?window.onunload:function(){});
window.onunload=function() {
tempfunc();
document.getElementsByTagName('head')[0].removeChild(elem);
}
}
}
}
/* >>> voor syntax highlighting.*/?>
var load = {
/*
load.js( string/array FILE [, function ONCOMPLETE] [, string/number CACHEID] )
FILE: bestandsnaam/bestandsnamen van het script.
ONCOMPLETE: functie die uitgevoert moet worden wanneer het bestand/de bestanden klaar zijn met laden.
CACHEID: geef een id op. Verander het id om de browser een nieuwe versie van het bestand te laten laden. Je kan als Id een MD5 hash van het bestand meegeven.
In debugfase kan je ook gewoon het resultaat van Math.random(); opgeven om iedere keer een vers bestand binnen te halen.
Cache-ID kan bestaan uit alles wat om te zetten is tot een tekenreeks, zoals een getal of tekenreeks. Array's worden NIET automatisch omgezet.
Je kan een_array.join("-"); gebruiken om een array om te zetten tot een tekenreeks.
*/
js:function(files,oncomplete,cacheid) {
if(typeof files=='string') {
files = [files];
} else if(typeof(files)!='object'
|| !(files instanceof Array)) {
throw '1st argument should be an instance of Array or String.';
return false;
} else if(files.length == 0) {
throw '1st argument is an empty Array. No files to load.';
return false;
}
if(cacheid !== undefined
&& cacheid !== null
&& cacheid !== false
&& cacheid !== 0) {
var cacheid = '?'+cacheid.toString();
} else {
var cacheid = '';
}
var c = 0;
var check = function(){
c++;
if(c==files.length){
oncomplete();
}
};
for(var x=0;x<files.length;x++) {
var file = files[x].toString() + cacheid;
var elem = document.createElement('script');
elem.setAttribute('type','text/javascript');
elem.setAttribute('src',file);
if(typeof oncomplete=='function') {
if(elem.onreadystatechange===null
&& elem.onload===undefined) {
elem.onreadystatechange=function() {
if(this.readyState=='loaded'
|| this.readyState=='complete') {
check();
}
}
} else {
elem.onload=check;
}
}
document.getElementsByTagName('head')[0].appendChild(elem);
var tempfunc=(typeof window.onunload=='function'?window.onunload:function(){});
window.onunload=function() {
tempfunc();
document.getElementsByTagName('head')[0].removeChild(elem);
}
}
}
}
/* >>> voor syntax highlighting.*/?>