Avatar billede visto Guru
25. oktober 2003 - 10:01 Der er 4 kommentarer og
1 løsning

Konflikt mellem to javascripts?

Jeg har hidtil med succes brugt følgende javascript, som bruges til at placere en underside korrekt i sit frameset (fx hvis man i en søgemaskine klikker på link til en underside):

<!--
if (self.location.href == top.window.location.href)
{ top.window.location.replace("http://vinsiderne.dk/index.htm" + "?" + self.location.href) }
//-->

Jeg har dog nu indført et javascript i index-filen, der gør, at forskellige andre index'er loades afhængigt af skærmopløsning:

<script type="text/javascript">
function oploesning()
{
  x = screen.width;
    y = screen.height;
    if(x >= 1280 && y>=1024) location.href="index_1280.htm";
    else if(x >= 1024 && y>=768) location.href = "index_1024.htm";
    else if (x >= 800 && y >= 600) location.href="index_800.htm";
    else location.href = "index_800.htm";}
oploesning();
</script>

Det har uheldigvis medført, at undersider ikke længere loades, når man forsøger at gå ind på dem (altså på den direkte adresse til undersiden; det gør kun startsiden (med frameset).

Jeg har så forsøgt, at oprette en ny index-fil, index_uj.htm, hvor scriptet ang. skærmopløsninger er fjernet.

Når jeg så prøver at gå ind på en underside, så er det stadig kun startside der loades. Dog sker der nu et adresseskift i adresse-linjen.

Hvis jeg fx prøver at loade siden:

http://vinsiderne.dk/vinsider/vurderinger/il_grigio.htm

så bliver adressen til:

http://vinsiderne.dk/index_uj.htm?http://vinsiderne.dk/vinsider/vurderinger/il_grigio.htm

hvilket tidligere var netop det der skulle til, før undersiden viste sig korrekt i framesettet.

Hvad skal jeg gøre for igen at få undersiden loadet korrekt i sit frameset?
Avatar billede roenving Novice
25. oktober 2003 - 12:25 #1
<script type="text/javascript">
function oploesning()
{
  x = screen.width;
    y = screen.height;
    if(x >= 1280 && y>=1024) location.href="index_1280.htm" + (location.search)?location.search:"";
    else if(x >= 1024 && y>=768) location.href = "index_1024.htm" + (location.search)?location.search:"";
    else if (x >= 800 && y >= 600) location.href="index_800.htm" + (location.search)?location.search:"";
    else location.href = "index_800.htm" + (location.search)?location.search:"";}
oploesning();
</script>
Avatar billede visto Guru
25. oktober 2003 - 12:56 #2
>roenving

Når jeg vil gå direkte ind på en underside, står det blot og flimrer voldsomt i både adresse- og proceslinjen, og intet indlæses. Browseren blokerer nærmest.
Avatar billede roenving Novice
25. oktober 2003 - 13:00 #3
Det er ikke på grund af ovenstående, så der må være andet, som har en indvirkning !-)

-- Har du lagt din frame-load-kode ind på alle index-siderne ?-)

Du kan forøvrigt se min egen model (som ikke har størrelses-tingen med):

http://roenving.users.whitehat.dk/WD5Opacity.html
Avatar billede visto Guru
25. oktober 2003 - 13:29 #4
Som jeg forstår mekanikken i det her, skal scriptet kun ligge i index.htm (den index, der viderestiller til fx index_1024.htm), idet det javascript, der aktiveres, hvis en side loades udenfor frameset jo henviser til index.htm. Korrekt opfattet?
Når man er landet på fx index_1024.htm, er det jo fordi man er "henvist" fra index.htm med scriptet, og det giver vel ingen mening at have scriptet liggende også på de index'er der henvises til? Men det er måske også det, der er din pointe?

Uden "størrelses-tingen" har jeg ikke haft problemer.
Avatar billede visto Guru
01. november 2003 - 08:08 #5
Trist at jeg ikke kunne finde en løsning på spørgsmålet; lukker hermed.
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