[dhtml] extern bestand als variabele

Pagina: 1
Acties:
  • 186 views sinds 30-01-2008
  • Reageer

  • wacco
  • Registratie: Augustus 2002
  • Laatst online: 21-03-2023

wacco

cli, hlt.

Topicstarter
Wat ik wil is een bestand binnenhalen en dat dan als variabele kunnen gebruiken. Nu kan je volgens mij alleen maar via iframes bestanden binnenhalen dus ik heb nu het volgende;
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<html>
  <head>
    <script type="text/javascript">
      function loadit(){
        document.getElementById('test').src = "test.txt";
        document.getElementById('text').innerHTML =
          document.getElementById('test').innerText;
      }
    </script>
  </head>
  <body onload="loadit()">
    <div style="VISIBILITY: hidden"><iframe id="test"></iframe></div>
    <div id="text"></div>
  </body>
</html>

de innerText schijnt wel te bestaan (hij geeft ook geen undefined) volgens de msdn, maar ik zie dus niets (de inhoud van test.txt is gewoon 'blaaat') :(
Weet iemand hoe dit komt? Als iemand wist hoe ik het zonder iframe kon doen zou het helemaal fantastisch zijn, maar dit lijkt me de enige manier.
Owh en de div style="VIS... een id meegeven werkt niet, want dan zitten die iframe tags erbij en dat wil ik niet. Een div ín test.txt zetten werkt ook niet want dan ziet ie em niet (is het tekst geworden ipv een echte div). Het zetten van de innerHTML of innerText van de iframe (dus ...('test').innerHTML = "text.txt"; ) geeft runtime errors.

Spolap: Interactive webcomic


  • Wolfboy
  • Registratie: Januari 2001
  • Niet online

Wolfboy

ubi dubium ibi libertas

mag ik vragen wat je hiermee wilt gaan doen?

ik vraag me af of zoiets wel mogelijk is met javascript, je zou het natuurlijk ook nog in een extern .js bestand kunnen plaatsen en daar alle tekst in een variabele zetten maar of je daar wat mee opschiet :?

Blog [Stackoverflow] [LinkedIn]


  • Osiris
  • Registratie: Januari 2000
  • Niet online
Is zulke zooi met IFrames niet extra beveiligd enzo ivm misbruik?

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

wat dacht je van in plaats van het window object van je iFrame te benaderen een stapje verder te gaan richting het document object?

Intentionally left blank


Verwijderd

Je zou misschien ook met xmlhttprequest kunnen gaan werken?

  • wacco
  • Registratie: Augustus 2002
  • Laatst online: 21-03-2023

wacco

cli, hlt.

Topicstarter
Wat ik hier mee wil doen? Heb je de dhtml contest gezien? ...multiplayer? :*) Zit een beetje te kijken of het haalbaar is. Het versturen van info kan iig door gewoon variabelen mee te geven aan een pagina-oproep (wat denk ik wel te doen moet zijn, nog niet echt tijd aan besteed) en ik moest dus iets bedenken om info te kunnen ontvangen.
Ik ga even kijken hoe dat met document object zit, misschien dat ik er wat aan heb. En xmlhttprequest klinkt ook duur maar of het dan nog binnen de dhtml-regelementen valt weet ik niet :)

Spolap: Interactive webcomic


Verwijderd

Uhm je mag geen serverside technieken gebruiken (in de contest) en aangezien een browser niet zomaar contact kan leggen met iemand anders zijn machiene is het bij voorbaat vrij kansloos. Dus degene moet of een webserverdraaien of ze moeten beide op een centrale server connecten. Dan blijft dus over dat je alleen een multiplayer spel kan maken voor op 1 computer.

Verwijderd

Je kan ook gewoon een bestandje downloaden (met IE) door middel van het standaard download behavior. Werkt zo:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<script language="javascript">
   function onDownloadDone(s)
   {
      //
      // s is de inhoud van het bestand
      //

      alert (s);
   }
</script>

<a href="javascript:this.startDownload('bestand.txt', 
onDownloadDone)" style="behavior:url(#default#download)">klik hier</a>

  • wacco
  • Registratie: Augustus 2002
  • Laatst online: 21-03-2023

wacco

cli, hlt.

Topicstarter
Hmm dat serversided niet mag had ik even gemist, das jammer. Blijft het nog steeds leuk om het uit te werken. Ik ga vanavond weer even verder puzzelen :) Dat .startDownload klinkt interessant.

Spolap: Interactive webcomic


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

Behaviors zijn leuk, maar wel IE only. Voor het ophalen van data zou ik toch eerder voor xml gaan. Daar zijn voor zowel IE als Mozilla(en aanverwanten) prima functionaliteiten voor.

ala
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
// moz
xmlhttp = new XMLHttpRequest();

// winIE(6)
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");

// alletwee
xmlhttp.open("GET", "pad/bestand.xml", false);
xmlhttp.send(null);

// de xml   
alert(xmlhttp.responseXML);

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


Verwijderd

Daar ben ik het helemaal mee eens Clay.

Verwijderd

http://www.xs4all.nl/~ppk/js/importxml.html

De op deze pagina beschreven methode geniet mijn voorkeur. Deze methode werkt al vanaf NS 6.0 (XMLHttpRequest pas vanaf 6.1 naar ik meen). Bovendien heb ik gemerkt dat K-Meleon crasht op XMLHttpRequest, terwijl bovenstaande methode daarin wel goed functioneert.

Mogelijk nadeel: je bent gebonden aan het werken met XML.
Pagina: 1