Det eneste den gør at den alert'er this.location. Og det ser jo fint ud i FF, IE osv. Men ikke i Safari. Der for jeg et ? istedet for %F8 Hvorfor gør jeg det. Jeg har meget brug for at kunne hente den eksakte URL ud. Det virker ikke at unescape, så jeg er lidt på bar bund.
Mit problem udspringer af at jeg skal leverer et script der kan inkluderes på mange forskellige websites. Dvs. at den URL siden har, skal jeg kunne benytte, men uden at ændre i URL'en eller indhold på siden, dvs. jeg kan ikke sætte charset, som udgangspunkt.
Jeg har forsøgt at sætte charset på <script> tagget, men uden held.
Kan du muligvis uddybe lidt hvad du mener med at det er sjove tegn. Et escaped ø er jo bare %F8, hvilket jeg gerne vil ha fat i. Altså jeg vil helst ha fat i %F8, fremfor ø'et.
Nej, du kan ikke sætte charset på en URL. Derfor har man valgt utf-8 som tegnsæt for URL-er. Og hvis du bruger utf-8 har du næppe problemer. Med dit eksempel skal filnavnet også være i utf-8.
Jeg synes ogsaa at Navneord skal skrives med store Bogstaver, men saadan er det ikke - vi må jo følge med Tiden. ... *g* ...
jeg tror du har misforstået mit spørgsmål, eller også misforstår jeg dit svar/kommentar.
Jeg har ingen mulighed for at ændre på URL'en. Den der bruger mit javascript ønsker ikke at ændre på deres URL, men mit javascript skal stadig gerne virke.
Skal jeg så forstå på din kommentar, at så har jeg bare tabt?
nemlig. Men der er rigtig mange sites der bruger escapede URL'er, måske fordi alle andre browsere gør som de skal, det er kun safari der ikke virker. Selv i Chrome virker det.
Jo, men det kan man godt, altså bruge escapede url-er, man skal bare gøre det med UTF-8 så fx ø bliver til %C3%B8 (hvis jeg husker rigtigt). Filnavnet skal så også bruge de samme to bytes til ø.
Filen på serveren hedder safari-ø.html Når jeg requester siden igennem en safari browser med safari-%F8.hmtl så hentes den rigtige fil. Hvorfor kan selv samme safari browser så ikke tolke bogstavet ø eller %F8 når jeg i et javascript behandler this.location.
Det er sagt før: sjove tegn i en URL skal være i UTF-8. Nogle browsere har valgt også at acceptere ISO-8859-1, eller gætte på at det ISO-8859-1. Læg mærke til ordet "skal" i ovenstående tekst.
hæ, det lykkedes mig at få det til at virke. Safari kan åbentbart ikke fortolke det når det er på this/window.location. Men går jeg lige et niveau ned og beder om this.document.URL så spiller det :-)
Hvorfor der er denne mystiskhed, kan jeg ikke svare på. Men jeg er kommet i mål, så jeg er glad. Men tak for snakken om charset og standarder
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.