Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » Auszeichnungssprachen » Javascript: Daten bei Bedarf nachladen? Antworten
Javascript: Daten bei Bedarf nachladen?

mvsxyz
Pixelschubser


Beiträge: 13


Ich habe Daten, die nur bei einer bestimmten Aktion gebraucht werden. Das Problem ist nur, dass die Daten über 50 KB groß sind. Gibt es eine Möglichkeit die Datei nachzuladen?

  Profil   Editieren   Zitieren

Ehemaliges Mitglied (#1460)
Posting-Schinder


Beiträge: 614


Da JavaScript keine Dateizugriffe kann, sollte das schwierig werden.
Vielleicht reicht es Dir aber auch, ein neues Fenster (u.U. winzig klein) aufzumachen, da das externe JavaScript einzuladen, und dann von der opener-Seite mit dem Code zu kommunizieren.

  Profil   Editieren   Zitieren

mvsxyz
Pixelschubser


Beiträge: 13


Danke erstmal. Ich werde mir dann wohl noch etwas ersinnen müssen...

  Profil   Editieren   Zitieren

mvsxyz
Pixelschubser


Beiträge: 13


Was lange währt wird endlich gut...

Ich habe jetzt eine Lösung gefunden:
1: 
2: 
3: 
4: 
5:
var script = document.createElement('script');
script.setAttribute('src', 'datei.js'); //URL zuweisen
script.setAttribute('type','text/javascript');
script.setAttribute('language','javascript');
document.getElementsByTagName('head')[0].appendChild(script);


Vielleicht kann es noch jemand gebrauchen.

  Profil   Editieren   Zitieren

c3o
Posting-Schinder


Beiträge: 586


JavaScript kann heutzutage sehr wohl Dateizugriffe, naemlich per XMLHttpRequest (aka "AJAX").

Nachdem du aber JS-Code selbst nachladen willst (nicht etwa HTML oder XML), ist deine selbst gefundene Loesung sowieso die bessere.

  Profil   E-Mail   Website   Editieren   Zitieren

Cyberto
Pixelschubser


Beiträge: 1


Super! genau das habe ich gesucht

bei ist es so, dass ich lightview eingebunden habe. Die Bilder werden jedoch erst nach einiger Zeit mit Ajax geladen. Lightview findet somit keine URLs mit class="lightview"

nun musste ich den AJAX Code ändern in:

function ContentChange(stype,specialfile,identity) {
var script = document.createElement('script');
script.setAttribute('src', 'js/lightview.js'); //URL zuweisen
script.setAttribute('type','text/javascript');
script.setAttribute('language','javascript');
document.getElementsByTagName('head')[0].appendChild(script);
if (specialfile == ""){
var url="results.php";
} else {
var url=specialfile;
}
xmlHttp=GetXmlHttpObject();
url=url+"?id=";
url=url+identity;
url=url+"&type=";
url=url+stype;
xmlHttp.onreadystatechange=stateChange;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

super Danke

  Profil   E-Mail   Editieren   Zitieren
 

Antworten
Nach oben