hvis man trykker på "Specification" i højre side, skifter teksten under billederne.. hvis man trykker på et af billederne under "Favorite Details" i højre side skifter både tekst og billede. Smart! har kigget lidt i kildekoden, og kan se at de har lavet det pokkers besværligt!
Er der nogen der kan lave det nemt, overskueligt og Godt!
det ville være dejligt hvis teksterne kunne hentes ind fra en fil, fx beskrivelse.txt, hvis man ville se beskrivelse og omproduktet.txt, hvis man ville se noget om produktet!
Håber jeg har forklaret mig så godt som muligt og at der er nogen der kan hjælpe!
noget ala det her? ... skal nok senere have fundet ud af at have rettet den innerHTML til noget mere moderne... skal lige først finde helt ud af hvordan det gøres ... det her bør dog virke alligevel ;) = ?
... billedernes navne er ligemeget chngit.js filerne skal dog være i formen: "chngit"+nr+".js"
chngit('billede2.jpg',1); skifter billedet samt teksten til den i chngit1.js chngit(0,1); skifter ikke billedet kun teksten til den i chngit1.js chngit('billede2.jpg',0); skifter billedet men ikke teksten
-bør måske gøres med ajax... men jeg er jo newbie i js så...
Den vil ikke rigtig vise billederne, også selvom stien er rigtig> - kigger på det :P
og i de der chngit1.js, chngit2.js og chngit3.js har jeg jo ikke mulighed for at bruge tabeller, eller sætte billeder ind har jeg?>
Joh,
chngittxt='<table border="1" width="100%"> <tr> <td> Har lige ændret " til en \' ... nogle tegn skal til tider escapes med \ ... se evt. http://www.w3schools.com/js/js_special_characters.asp </td> <td>ty</td> <td> <img src="v1.gif"></td> </tr> <tr> <td> </td> <td> </td> <td>rty</td> </tr> </table>';
<a href="java script:chngit('..\122\billede2.jpg',0)">a</a> skal \ escapes med \ så \ bliver = \\ <a href="java script:chngit('..\\122\\billede2.jpg',0)">a</a>
vil skifte billedet til det der er placeret i nuværendedir/billeder/billede1.jpg samt js filen der bestemmer teksten til chngit/../minteksttilbilen.js altså nuværendedir/minteksttilbilen.js
Billender virker nu <img src="billedeknap" onclick="chngit('billede2.jpg',1);"> billedeknap havde du bare lige glemt skulle ha' .jpg i enden, og det var jeg lige for træt til at se i aftes!
-jeg har måtte ændre scripts[runit].src="chngit"+file+".js";document.getElementById ("dintekst").innerHTML=chngittxt; til- scripts[runit].src=file+".js";document.getElementById("dintekst").innerHTML=chngittxt;
Da filerne ligger i under mapper og alt bliver hentet ind på en index side.
så der kommet stier til "chngit" onclick="chngit('pic/info/nikon_3.jpg','/pages/info/kamerat/chngit1');
Men det tror jeg ikke er skyld i mit problem. (bare så I også vidste jeg havde ændret noget..)
mit problem er at man skal trykke 2 gange på et link for at det virker, og jeg får en fejlmeldign: 'chngitxt' er ikke defineret. Når man har trykket 2 gange på alle link virker de fint, men det dur jo ikke rigtig..
prøv selv:
obs den første række med billeder, der er der ikke nogen side der skifter, først den næste række...
... skift evt. mappeplaceringerne, istedet for at kalde chngit('pic/info/nikon_3.jpg','/pages/info/kamerat/chngit1');
Kan du måske kalde: chngit('nikon_3.jpg','1'); og så rette a.setAttribute("src",file+".js"); til: a.setAttribute("src","/pages/info/kamerat/chngit"+file+".js");
samt document.getElementById("billedet").setAttribute("src",pict); til: document.getElementById("billedet").setAttribute("src","pic/info/"+pict);
...
...
Opkaldet til skiftet af innerHTML er rykket til javascriptet, så skiftet af innerHTML'en først sker når javascriptet er blevet loadet. Og script skiftet er rettet over til noget mere dom agtigt (nu er FF også med).
jeg kan desværre ikke skifte mappeplaceringerne i skriptet, da scriptet skal bruges andre steder på siden, men det virker perfekt nu, jeg kan i hvert fald ikke se nogen fejl!! =D tusinde mange tak for hjælpen!
nej det gør ikke noget, ved da ikke om det var skidt... Nu er der jo næsten også gået et år... hehe så du har vel lært noget mere... det ser i hvert fald godt ud
men synes ikke det virker.. jo altså det du viser der virker, men der sker et eller andet med det script, når jeg samler det i en linje.. så virker det ikke, orginalt ser det sådan her ud:
<table> <tr> <td style="text-align:center;cursor:pointer;vertical-align:middle;" colspan="2" onClick="foldIndUd('trEks');" onMouseOver="this.style.backgroundColor='#E19460';window.status='Click for at folde ud';" onMouseOut="this.style.backgroundColor='#dddddd'; window.status='';" bgcolor="#008080">Klik for at folde ind og ud</td> </tr> <tr> <td colspan="2" class="tabel" valign="middle"> <div id="trEks" style="display: none;margin:0px;"> åben </div> </td> </tr> </table>
Hmm, de der function anonymous forstår jeg ikke lige (prøv at fjerne dem). Jeg kørte bare en replace af ' til \' og læste det ikke igennem ... Denne virker hos mig:
ihtml('<table><tbody><tr><td onmouseover="this.style.backgroundColor=\'#E19460\';window.status=\'Click for at folde ud\';" style="VERTICAL-ALIGN: middle; CURSOR: pointer; TEXT-ALIGN: center" onclick="foldIndUd(\'trEks\');" onmouseout="this.style.backgroundColor=\'#dddddd\'; window.status=\'\';" bgcolor="#008080" colspan="2">Klik for at folde ind og ud</td></tr><tr><td class="tabel" valign="middle" colspan="2"><div id="trEks" style="DISPLAY: none; MARGIN: 0px">åben </div></td></tr></tbody></table>');
Er der noget i dette her script der kan få explorer til at komme med denne fejlmeddelse:
linje 20 tegn 5 Fejl: Et objekt er obligatorisk kode 0
Denne fejlmeddelse kommer kun på alle de sider hvor rand.js scribtet ikke bliver brugt - er det pga den sidste linje i sciptet "window.onload=getRandPic;"
-scriptet: var arrBilleder = new Array(); for(i=0;i<30;i++){ arrBilleder[i] = new Image; arrBilleder[i].pic = "pic/rand/img"+(i+1)+".jpg"; } function getRandPic() { var aRand, tmp, nD, myD, myM; aRand = [11,6,22,13,3,5,17,13,10,3,14,4,23,2,14,9,6,15,14,16,12,22,0,20,9,7,24,2,4,11,19,29,1,5,7,25,0,16,21,12,24,2,4,11,1,28]; nD = new Date(); nD.setDate(nD.getDate() - ((nD.getDay() + 6) % 7)); myM = nD.getMonth()+1; myD = nD.getDate();
for ( i=0; i<myM; i++) { tmp = aRand.shift(); aRand.push(tmp); } var billede="url("+arrBilleder[aRand[myD]].pic+")"; document.getElementById("tab1").style.backgroundImage = billede;
... Fejlen bestod i (formoder jeg, jeg ved jo ikke om det løser det) at i dette tilfælde manglede elementet som javascriptet skulle bruge til billederne. Ved at spørge på om hvorvidt elementet eksisterer, inden funktionen startes undgåes dette problem. Alternativt kan man selv gøre så <script tag delen kun står på sider, hvor scriptet skal køres, men ofte har man jo flere javascripts i samme script fil, og det er derfor ikke optimalt.
Tak mclemens, det virkede med window.onload=function(){ if(document.getElementById("tab1"))getRandPic(); } nu har jeg ikke noget problem med de andre sider
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.