[JS] scherm grote check

Pagina: 1
Acties:

  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 11:19

TwoR

Gekleurde stippen

Topicstarter
Hoi, ik heb een site die voor meerdere schermresoluties beschikbaar moet zij. Nu heb ik met Java script het op de volgende manier gedaan:
code:
1
2
3
4
5
6
7
8
<SCRIPT LANGUAGE="JavaScript">
    if (screen.width > 800 ) {
        location = "ck.php?hoogte=450";
    }
    else {
        location = "ck.php?hoogte=280";
    }
</SCRIPT>


Alleen nu wil ik eigenlijk ook nog andere (grotere) resoluties kunnen ckecken namelijk 1280*1024 en 1152*864 dit krijg ik alleen niet voor elkaar. Hoe kan ik dit doen ik heb het geprobeerd met
code:
1
2
3
if (screen.width > *resolutie* ) {
        location = "ck.php?hoogte=*waarde*";
    }


Alleen dat pakt ie niet. Kan iemand me een stapje verder helpen?

[ Voor 7% gewijzigd door TwoR op 05-04-2004 12:30 ]


  • coubertin119
  • Registratie: Augustus 2002
  • Laatst online: 25-05 19:01
Wat werkt er dan niet mee? Of laat je *resolute* (wat het ook moge betekenen) gewoon daar staan zoals het staat?

Skat! Skat! Skat!


  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 11:19

TwoR

Gekleurde stippen

Topicstarter
Nou als ik andere dan de resoluties er bij zet zoals in het tweede code voorbeeld waar ik op de plek *resolutie* een gewenste resolutie invul dan zal die de pagina nier herladen. Op de een of andere manier pakt js dan de scherm resolutie ofzo niet goed.

  • André
  • Registratie: Maart 2002
  • Laatst online: 26-05 00:33

André

Analytics dude

JavaScript:
1
2
3
4
5
if (screen.width == 800) { location = "ck.php?hoogte=450"; }
if (screen.width == 1024) { location = "ck.php?hoogte=500"; }
if (screen.width >= 1280) { location = "ck.php?hoogte=550"; }

location = "ck.php?hoogte=280";

[ Voor 37% gewijzigd door André op 05-04-2004 12:40 ]


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
TwoR schreef op 05 april 2004 @ 12:30:
Hoi, ik heb een site die voor meerdere schermresoluties beschikbaar moet zij. Nu heb ik met Java script het op de volgende manier gedaan:
code:
1
2
3
4
5
6
7
8
<SCRIPT LANGUAGE="JavaScript">
    if (screen.width > 800 ) {
        location = "ck.php?hoogte=450";
    }
    else {
        location = "ck.php?hoogte=280";
    }
</SCRIPT>


Alleen nu wil ik eigenlijk ook nog andere (grotere) resoluties kunnen ckecken namelijk 1280*1024 en 1152*864 dit krijg ik alleen niet voor elkaar. Hoe kan ik dit doen ik heb het geprobeerd met
...

Alleen dat pakt ie niet. Kan iemand me een stapje verder helpen?
Hij pakt hem niet omdat 1280 al groter is dan 800 dus oftewel je browser gaat naar ck.php?hoogte=450.

Je moet even kijken naar een switch/select statement of je if statement veranderen naar : >800 && <1024

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 26-05 19:49

RM-rf

1 2 3 4 5 7 6 8 9

A) is het niet beter om de screen.width niet gewoon standaard mee te geven uds:
code:
1
location = "ck.php?breedte="+screen.width+"&hoogte="+screen.height;


Een belangrijk nadeel is echter ook dat het doorgeven van je scherm-breedte feitelijk niks zegt over de grootte van het venster waarin de website wordt weergegeven,
ik heb zelf 1600x1200, maar browse nooit fullscreen, meestal staat mijn browse-venster ergens tussen de 800 en 1000 pixels breed.

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 11:19

TwoR

Gekleurde stippen

Topicstarter
RM-rf schreef op 05 april 2004 @ 12:48:
A) is het niet beter om de screen.width niet gewoon standaard mee te geven uds:
code:
1
location = "ck.php?breedte="+screen.width+"&hoogte="+screen.height;


Een belangrijk nadeel is echter ook dat het doorgeven van je scherm-breedte feitelijk niks zegt over de grootte van het venster waarin de website wordt weergegeven,
ik heb zelf 1600x1200, maar browse nooit fullscreen, meestal staat mijn browse-venster ergens tussen de 800 en 1000 pixels breed.
Nee dat is dan inderdaad ook wel weer zo. Eens kijken of ik daar dan een oplossing voor kan vinden want om het venster automatisch full screen te maken is best een ranzige oplossing al zeg ik het zelf.

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

TwoR schreef op 05 april 2004 @ 13:13:
[...]

Nee dat is dan inderdaad ook wel weer zo. Eens kijken of ik daar dan een oplossing voor kan vinden want om het venster automatisch full screen te maken is best een ranzige oplossing al zeg ik het zelf.
Daarom is het ook netter gebruik te maken van
JavaScript:
1
screen.availWidth
en
JavaScript:
1
screen.availHeight
:)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 11:19

TwoR

Gekleurde stippen

Topicstarter
Nou ik heb het opgelost ik denk ik post mijn oplossing hier nog even:

code:
1
2
3
<SCRIPT LANGUAGE=\"JavaScript\">
     location = \"ck.php?hoogte=\"+screen.height;
</SCRIPT>


PHP:
1
2
3
4
5
6
7
8
9
if($_GET['hoogte'] == "600"){
    $hoogte = "280";
    }elseif($_GET['hoogte'] == "768"){
        $hoogte = "445";
        }elseif($_GET['hoogte'] == "864"){
            $hoogte = "550";
            }elseif($_GET['hoogte'] >= "1024"){
            $hoogte = "700";
}


Het is wel gebasseerd op fullscreen surfen maar dit wordt ook niet voor een gewone website maar een online "applicatie" dus dan is het minder erg dat het op fullscreeen is gebasseerd.

[ Voor 71% gewijzigd door TwoR op 05-04-2004 15:02 ]


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-05 18:53

Bosmonster

*zucht*

Vergeet niet een default te declareren.. want je noemt maar 4 van de miljoenen mogelijke resoluties ;)

(dus ook voor < 1024)

Verder is het handiger om met integers te werken dan met strings, zeker als je gaat vergeljiken (>=). Gewoon al die quotes wegflikkeren.

[ Voor 47% gewijzigd door Bosmonster op 05-04-2004 15:16 ]


Verwijderd

Ik zou er ook een switch van maken...
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?

switch ((int)$_GET["hoogte"]) {
  case 768:
    $hoogte = "445";
    break;
  case 864:
    $hoogte = "550";
    break;
  case 1024:
    $hoogte = "700";
    break;
  case 600:
  default:
    $hoogte = "280";
    break;
}

?> 

[ Voor 15% gewijzigd door Verwijderd op 05-04-2004 15:20 ]


  • RM-rf
  • Registratie: September 2000
  • Laatst online: 26-05 19:49

RM-rf

1 2 3 4 5 7 6 8 9

volgens mij is een switch statement ook het optimaalste
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
switch ( $_GET['hoogte'] ) {
   case 600 :
      $hoogte = 280
   break;
   case 768 :
      $hoogte = 445
   break;
   case 864 :
      $hoogte = 550
   break;
   case 1024 :
      $hoogte = 700
   break;
   default:
      $hoogte = 280;
}

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


Verwijderd

Niet optimaal, overzichtelijk :Y)

Ik zou trouwens de GET variabele casten naar een integer... (ben van de sterk-getypeerde talen ;))

[ Voor 66% gewijzigd door Verwijderd op 05-04-2004 15:22 ]


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-05 18:53

Bosmonster

*zucht*

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$gethoogte = isset ($_GET['hoogte']) ? (int) $_GET['hoogte'] : 0;

switch ( $gethoogte ) {
   case 600 :
      $hoogte = 280
   break;
   case 768 :
      $hoogte = 445
   break;
   case 864 :
      $hoogte = 550
   break;
   case 1024 :
      $hoogte = 700
   break;
   default:
      $hoogte = 280;
}


als we dan toch mierenneuken.. :P

Verwijderd

[Miereneuk mode=on]
Gebruik dan ook Hongaarse notatie; iHoogte :Y)

punt-komma's aan het eind van statements doen trouwens ook wonderen ;)

en als we ook nog byte-saving gaan mieren**ken, dan kan die eerste case boven default staan, scheelt weer een variabel toewijzing...
[/Miereneuk]

[ Voor 80% gewijzigd door Bosmonster op 05-04-2004 15:45 . Reden: oops.. verkeerde knopje.. ]


  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 11:19

TwoR

Gekleurde stippen

Topicstarter
tja en als het groter is als 1024 :) naar mijn beste weten gaat dat niet in een switch statement.

Verwijderd

daar heb je de default voor

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-05 18:53

Bosmonster

*zucht*

Verwijderd schreef op 05 april 2004 @ 15:39:
[Miereneuk mode=on]
Gebruik dan ook Hongaarse notatie; iHoogte :Y)

punt-komma's aan het eind van statements doen trouwens ook wonderen ;)

en als we ook nog byte-saving gaan mieren**ken, dan kan die eerste case boven default staan, scheelt weer een variabel toewijzing...
[/Miereneuk]
Had de switch gewoon van RM-rf gekopieerd :P

  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 11:19

TwoR

Gekleurde stippen

Topicstarter
ja oke maar ik wil dan zeg maar 2 soorten default hebben als het groter is dan 1024 moet de hoogte worden van 1024 is het formaat niet bekend maar niet groter dan 1024 moet het 280 worden.

Verwijderd

if statement in de default... is altijd nog netter dan 10x if onder elkaar (persoonlijk)

Verwijderd

Waren resolutie check scripts niet een beetje oud en overbodig tegenwoordig?

(Wat doe je eigelnijk met mensen die JS uit hebben staan?)

Verwijderd

De CSS Dominee heeft gesproken :Y)

Anne soms moet je basis eisen stellen aan de software die bezoekers van je site gebruiken... JavaScript is tegenwoordig geen belachelijke eis.

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-05 18:53

Bosmonster

*zucht*

Wil niet zeggen dat ik het daar mee eens ben.. maar we hoeven ook niet van ieder topic een heilig topic te maken die meestal neerkomt op 'bouw je site even opnieuw'.

Gewoon antwoord geven op vragen kan ook wel eens.

  • klokop
  • Registratie: Juli 2001
  • Laatst online: 30-03 19:56

klokop

swiekie swoeng

[behulpzaam met spelling]
het is 'scherm grootte' (dit is een tip, niet geen flame, troll, of anderszins lullig bedoelde opmerking)

"Passing silhouettes of strange illuminated mannequins"


  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 11:19

TwoR

Gekleurde stippen

Topicstarter
damn toch wel ik heb zeker een paar minuten zitten twijfelen tusesn grote en grootte. Bedankt voor de tip.

Verwijderd

Bosmonster schreef op 05 april 2004 @ 16:15:
Gewoon antwoord geven op vragen kan ook wel eens.
Eens, maar aangezien die al gegeven was... :9

  • Wolfboy
  • Registratie: Januari 2001
  • Niet online

Wolfboy

ubi dubium ibi libertas

is het misschien makkelijk om iets te doen met < en >
je kan wel naar exacte resoluties kijken maar het lijkt me beter om te kijken, als het groter is dan .... dan deze setting

want als ik die switch zo zie dan zou ik met 1600x1200 dus op een 640x480 pagina uitkomen ofzo?
lijkt me niet echt optimaal :P
edit:
javascriptje niet goed bekeken 7(8)7

[ Voor 9% gewijzigd door Wolfboy op 05-04-2004 19:58 ]

Blog [Stackoverflow] [LinkedIn]

Pagina: 1