anoniem Geplaatst: 6 september 2003 Delen Geplaatst: 6 september 2003 Ik heb met behulp van dit script (via annie/termin8ter): [code:1:f2066c370a]<script> function showImage() { var sImageSrc = window.location.search.substr(1); if (sImageSrc.length > 0) { var img = document.createElement('img'); img.setAttribute('src', sImageSrc); img.setAttribute('alt', 'Alt tekst'); document.getElementsByTagName('div')[0].appendChild(img); document.getElementById('foto').appendChild(img); img.onerror = function() { this.setAttribute('src', 'Images\error.gif'); } } } </script> [/code:1:f2066c370a] Voor elkaar gekregen om een foto te krijgen in een sjabloon. (met zo'n link:) <a href="Foto.html?Foto4\Foto.jpg"> <img border="0" src="Foto4\klein_1Foto.jpg" width="97" height="150"></a> Nu zou het mij ook wel leuk lijken om er dan een stukje tekst bij te zetten, waarvan de foto is, wat er gebeurd daar, etc. Nu zou dat natuurlijk kunnen met de 'window.location.search.substr(1)' maar ik weet niet hoe dat exact moet. Iemand een idee? zoiets als dit: script if windows.location.search.substr(1) = 'Foto1' document.write: 'blaat blaat' else if windows.location.search.substr(1) = 'Foto2' document.write: 'blaat2 blaat2' else etc. Wie kan me verder helpen? Ieder alvast bedankt. Quote Link naar reactie
anoniem Geplaatst: 6 september 2003 Auteur Delen Geplaatst: 6 september 2003 [code:1:f32b64042e]iets.html?img=nee.png&alt=ja[/code:1:f32b64042e]Zou je kunnen proberen. Anne Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 Als je de methode van termin8or gebruikt zal je de location.search moeten opdelen in zijn name-value pairs. Scriptjes hiervoor zijn er genoeg te vinden. Maar als je het zelf wil proberen dan kan je bijvoorbeeld gebruikmaken van de functie [url=http://www.devguru.com/Technologies/ecmascript/quickref/string_split.html]split()[/url]. Ik zie in je code overigens onderstaande staan. En dat lijkt me (je eerdere vraag kennende) dubbelop. [code:1:6d10e2d3df] document.getElementsByTagName('div')[0].appendChild(img); document.getElementById('foto').appendChild(img); [/code:1:6d10e2d3df] Misschien wordt het toch tijd om een tutorial te volgen op internet zodat je begrijpt wat je hier doet. Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 Ik zie in je code overigens onderstaande staan. En dat lijkt me (je eerdere vraag kennende) dubbelop. [code:1:c1e4dd2bf4] document.getElementsByTagName('div')[0].appendChild(img); document.getElementById('foto').appendChild(img); [/code:1:c1e4dd2bf4] [color=red:c1e4dd2bf4] De laatste regel had je zelf een keer apart gezegd. Die heb ik er toen maar bij gedaan. Werkt ook wel zonder die regel, kom ik nu achter.[/color:c1e4dd2bf4] Misschien wordt het toch tijd om een tutorial te volgen op internet zodat je begrijpt wat je hier doet. [color=red:c1e4dd2bf4] Ik heb er eentje van http://websitehulp.tripod.com/index.html gevonden. ff kijken of het wat wordt[/color:c1e4dd2bf4] Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 Ik kom nu al het volgende probleem tegen :( Mijn JavaScriptje: [code:1:2f3b931a12]<script> function ShowText() { var Text = window.location.search.substr(1) if (Text = 'Foto3\Tijdvoorsoep.jpg') { window.alert("het werkt") } else { window.alert("het werkt niet") } } </script>[/code:1:2f3b931a12] Ik krijg altijd het bericht: het werkt. (moet later worden vervangen door document.write, maar ff gekozen voor windows.alert om direct te kunnen constateren of het niet of wel werkt) Volgensmij is de substr wel degelijk 'Foto3\Tijdvoorsoep.jpg'. Zo wordt immers ook de foto geopened. Maar ik heb zo'n gevoel dat er helemaal niet gekeken wordt naar de 'if functie'. Wie heeft een idee? scriptje afgeleid van dit script:[code:1:2f3b931a12]<script> function showImage() { var sImageSrc = window.location.search.substr(1); if (sImageSrc.length > 0) { var img = document.createElement('img'); img.setAttribute('src', sImageSrc); img.setAttribute('alt', 'Alt tekst'); document.getElementById('foto').appendChild(img); img.onerror = function() { this.setAttribute('src', 'Images\error.gif'); } } } </script>[/code:1:2f3b931a12] Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 if(Text [b:a3f9bc84ed]==[/b:a3f9bc84ed] '') Daarnaast moet je geen document.write gebruiken. Anne Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 [quote:8156980b1d="termin8or"]if(Text == '') Daarnaast moet je geen document.write gebruiken. Anne[/quote:8156980b1d] Gut, ik heb hele tijd geploeterd, maar met spatie tussen if en (Text... Dat zal het wel geweest zijn. Moet je net ff weten. Maar waarom moet ik geen document.write gebruiken? Lijkt mij het gemakkelijkst. Of moet ik de optie: p.setAttribute('p', Text); (?Iets in die richting, net zoals met de foto??) Dat moet ik zelf nog wel kunnen, vind ik. Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 [code:1:68313ad108] var p = document.createElement("p"); var pcontent = document.createTextNode("normale tekst"+variabele+"normale tekst"); p.appendChild(pcontent); document.getElementById("divid").appendChild(p);[/code:1:68313ad108]Zoiets? Anne Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 Ja, dat is het helemaal! Bedankt. Nu heb ik nog een probleem (hopelijk m'n laatste) D'r moeten nu twee scripts bij de <body onLoad> geladen worden (ShowImage en ShowText). Ik dacht dat er maar een tegelijk kon worden geladen. Hoe kun je dat omzeilen? Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 Zet het nou niet binnen het body element, maar gebruik die functie van mij ;) [code:1:45d0c52b8b]window.onload = function(){ ShowImage(); ShowText(); }[/code:1:45d0c52b8b]Deze zet je onderaan je externe javasript file ;). Anne Quote Link naar reactie
anoniem Geplaatst: 7 september 2003 Auteur Delen Geplaatst: 7 september 2003 Dank je voor je supersnel antwoord. Ik denk dat ik er nu wel uit kom. Binnenkort een sitecheck:) Jij en annie hebben me een heel stuk verder geholpen. Mijn grote dank daarvoor. Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen