Avatar billede grabit Nybegynder
11. marts 2001 - 13:33 Der er 11 kommentarer og
3 løsninger

javascript problem

der udloves mine sidste 50 points til den som kan løse problemet:

SE www.7step.com/damtoft/

Virker stadigt fint i 5.5 og i 5.0 så lang tid man er lokalt eller på en local host. Når siden ligger ude på en www. server går det galt og ingen af menuerne åbner!

Jeg håber på et kvalificeret svar som jeg kan benytte til at få det til at virke! Det er simpel DW javascript kode som plejer at virke kobineret med et script som man kan se i index.htm og i alle dokumenternes head:

menu.htm
if (top.frames.length == 0) {
        top.location=\"index.htm?thetop=ctop.htm&menu=cmenu.htm&main=cwelcome.htm\";
}

bevirker at framesættet læses ind hvis dokumentet køres alene, dejligt ikke. Jeg burde faktisk have points for at bringe en sådan kode ;)

Jeg ville helst være fri for at skulle poste det samme spørgsmål igen, men det må jeg jo blive nød til da jeg ikke fik svar på http://www.eksperten.dk/spm/54262
Avatar billede olebole Juniormester
11. marts 2001 - 13:41 #1
<ole>
Har lige svaret i det gamle spm....så ikke, der var oprettet et nyt :)
/mvh
</bole>
Avatar billede jumper Nybegynder
11. marts 2001 - 13:43 #2
if (top==self){ // Siden er ikke i frames
  top.location.href = \"index.htm?thetop=ctop.htm&menu=cmenu.htm&main=cwelcome.htm\";
}

/Thor
Avatar billede jakoba Nybegynder
11. marts 2001 - 13:53 #3
Hurra. Endelig en menu der virker fint i NS6 og ikke i IE :-))

Det ligner noget med din \"lav et frameset\" kode. Jeg har selv haft problemer med det og fandt endelig ud af at det var et cashe-problem. den frame-modificerede side bliver ikke cashet ordentligt og når den så genindlæses fra cashe ind i sin ramme går det galt. Det løstes ved at tilføje en \"dummy parameter\" til searc-strengen for andet load.
du kan de min løsning på det her:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/expframemain0.html

hvis det altså overhovedet er det der er galt.

mvh JakobA
Avatar billede grabit Nybegynder
11. marts 2001 - 16:12 #4
Dert lader til at du endeligt hat fanget noget af det rigtige Jakoba og JA, en hyldest til NS. Jeg er et klokkefår til Javascript og kan ikke få dit lille hack ind i min kode og jeg vil helst undgå at skrive alt om:

Jeg sætter den ind som du anbefaler men i anden del går det galt hvor jeg prøver at bruge .....htm&menu=\"\'+thisPage()+\'\"&ma...... Er det ikke muligt at gøre det sådan?

Her er hele scriptet hvor jeg prøver at bevare mit INDEX.HTM

<script language=\'javascript\'><!-- // indsæt scriptet øverst i head 
var loadedFrame = false;
function thisPage () { // undgå at denne side loades fra cashe til indre ramme
  if ( location.search.length > 0 ) {
    return location+\"&n=0\";
  } else {
    return location+\"?n=0\";
  }   
}; //end thisPage () -> url


if (top.frames.length == 0) {
        top.location=\"index.htm?thetop=top.htm&menu=\"\'+thisPage()+\'\"&main=welcome.htm\";
}

// --></script>
Avatar billede johnnyk Nybegynder
11. marts 2001 - 17:05 #5
Hej!
Prøv at konvertere location til en streng i thisPage():
-> location.toString()+\"&n=0\";
Iøvrigt - er enkelt anførselstegnene udenfor eller indenfor de dobbelte??? - De skal i hvert fald være indenfor.
/Johnny
Avatar billede jakoba Nybegynder
11. marts 2001 - 17:08 #6
Du skal have \'-citationstegnene inden i strengene omkranset af \"-citationstegn.
Men Nej. det vil alligevel ikke virke. Det vil give et ekstra spørgsmålstegn i query-strengen og det går ikke.

Nemmere at lave ændringen henne i index-filen, det er alligevel først der den skal bruges.

....
Men i filen index.htm bruger du jo overhovedet ikke den searchparameter ?? Det er de samme 3 frameobjects der bliver lavet hver eeneste gang:
  lavFrameObjekt(1, \'thetop\', \'top.htm\');
  lavFrameObjekt(2, \'main\', \'welcome.htm\');
  lavFrameObjekt(3, \'menu\', \'menu.htm\');

Så det er nok alligevel ikke framesettet det er galt med. Sorry.

mvh JakobA
Avatar billede grabit Nybegynder
11. marts 2001 - 17:20 #7
>jakoba
Jeg prøvede nogle forskellige versioner og fik det heller ikke til at virke!

Olebole>
Olebole nu har jeg lagt dit foreslag ud og der virker heller ikke! www.7step.com/damtoft/menu.htm
uden metatags, fjernet return document.MM_returnValue\", slettet click og ændret OnMouseDown til click!

Det må være noget andet jeg/vi har overset! Det er det fuckassbadeste problem jeg har haft længe, hvis jeg havde haft nogle flere points ville jeg hæve til 100 ;)
Avatar billede grabit Nybegynder
11. marts 2001 - 17:28 #8
Jeg kan ikke lade være med at tænke om du måske alligevel har ret JakobA. Siderne virker perfekt i > 4.* browsers så længe man er åbner siderne offline eller på en local host. Men ikke på www.server ??? Det ligner måske noget cashe agtigt noget!
Avatar billede jakoba Nybegynder
11. marts 2001 - 17:52 #9
Jeg har kikket i det tidligere spørgsmål.
Og i din kode.
Som nedenstående hvor der kun er eet aktivt link i brødkrummene linien:

<span class=\"sti\"><a href=\"welcome.htm\" target=\"_top\"><!-- #BeginEditable \"link1\" -->Til forsiden  <!-- #EndEditable --></a> <a href=\"kontakt.htm\" target=\"main\"><!-- #BeginEditable \"link2\" -->      <!--empty--><!-- #EndEditable --></a><a href=\"kontakt.htm\" target=\"main\"><!-- #BeginEditable \"link3\" -->      <!--empty--><!-- #EndEditable --></a><a href=\"kontakt.htm\" target=\"main\"><!-- #BeginEditable \"link4\" -->      <!--empty--><!-- #EndEditable --></a><a href=\"kontakt.htm\" target=\"main\"><!-- #BeginEditable \"link5\" -->      <!--empty--><!-- #EndEditable --></a><a href=\"kontakt.htm\" target=\"main\"><!-- #BeginEditable \"link6\" -->      <!--empty--><!-- #EndEditable --></a><a href=\"kontakt.htm\" target=\"main\"><!-- #BeginEditable \"link7\" -->      <!--empty--><!-- #EndEditable --></a><a href=\"kontakt.htm\" target=\"main\"><!-- #BeginEditable \"link8\" -->      <!--empty--><!-- #EndEditable --></a> </span>

Og er tilbøjelig til at give olebole ret. Første prioritet må være at rydde op i koden.

mvh JakobA
Avatar billede grabit Nybegynder
11. marts 2001 - 19:38 #10
Sitet er dynamisk opdaterbart ved hjælpe af programmet updatemadeeasy som parser XML information sammen med Dreamweaver ediable regions og comnment tags som dette:
<!-- #BeginEditable \"link8\" --><!--empty--><!-- #EndEditable -->
hvor <!--EMPTY--> kan blive erstattet af kundens ønskede tekst og comment tags er helt legal HTML kode.
Jeg ved det ser mærkeligt ud men det Commentags burde ikke betyde at nogle links ikke virker! Desuden er det dokument du nævner ikke det aktuelle menu.htm hvor fejlen må ligge!

Nej, jeg må svare at der skal ikke rydes op i koden, det ville være at fjerne hele sitets grund ide at erstatte tags! Det har jeg gjort 100 gange ude nogen problemer sow sorry.... problemet ligger et andet sted!
Avatar billede jakoba Nybegynder
11. marts 2001 - 20:16 #11
Det er bare det at det er så gevaldigt meget nemmere at overskue og finde fejlene i en kode hvor der står:

<span class=\"sti\">
<a href=\"welcome.htm\" target=\"_top\">Til forsiden</a>
</span>

End hvis det er \"klodsen\" i sidste indlæg som står der

Når den oprydning er foretaget er det ikke nær så svært at sige \"mon ikke  target=\"_top\"  skulle ændres til  target=\"main\"  her og i alle de andre topsider hvor der er en mappesti.

Jeg er nok bare for doven.

mvh JakobA
Avatar billede grabit Nybegynder
11. marts 2001 - 21:23 #12
Jeg giver dig ret i at det ville være nemmere, men hvis koden ikke var der ville kunden ikke selv kunne tilføje flere menuer vha. opdateringsmodulet UDME hvor man kan udvikle site med Dreamweaver templates os udnytte XML faciliteten.
Jeg giver dig ikke ret i at du er doven, men du prøver rigtigt meget. Jeg derimod var doven ved at lade welcome.htm loade alene og dermed hele framesættet. ved at->
\"welcome.htm\" target=\"_top\"

Det burde måske mere have været at udnytte index.htm filen ved at skrive:
\"index.htm?thetop=top.htm&menu=menu.htm&main=welcome.htm\"

og bevare \"_top\"

tak for ihærdigheden, men problemet bliver ikke løst!
;)
Avatar billede grabit Nybegynder
12. marts 2001 - 10:34 #13
Jeg har løst problemet, i stedet for at bruge MM behaviors (MM_goToURL(\'parent.frames[\\\'thetop\\\']\',\'ctop.htm\',\'parent.frames[\\\'main\\\']\',\'cwelcome.htm\',\'parent.frames[\\\'menu\\\']\',\'c)osv. osv.  til at loade frames benytter jeg:
\"index.htm?thetop=btop.htm&menu=bmenu.htm&main=bwelcome.htm\" target =\"_top\" mit eget scipt. Der var åbenbart en konflinkt med MM behaviors i IE 5.0. I skal have tak for indsatsen. Hvis i mailer mig jeres hostname, samt om i anvender <public_html> som rootfolder så modtager (olebole+jakoba) en gratis licens af UpdateMadeEasy hvis det har interesse! Desuden deler vi pointsne, det mener jeg er rimeligt når jeg nu selv har fundet en løsning!
Avatar billede jakoba Nybegynder
12. marts 2001 - 23:01 #14
Tak for points.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester