Vraag & Antwoord

Webprogrammeren & scripting

[Javascript] Waarschuwing geven bij andere resolutie

8 antwoorden
  • Ben bezig met een site te maken voor een klein bedrijfje... Nu heb ik al ingesteld dat mensen met een andere resolutie dan 1024x768 op een andere pagina terecht komen met dezelfde inhoud, nu wil ik ook graag dat mensen daar een waarschuwing krijgen dat de site niet optimaal is in hun resolutie.. dan kan ik natuurlijk wel met simpel javascript aangeven dat iedereen die op die pagina komt een popup krijgt... maar dat vind ik niet goed... Ik zal ff uitleggen hoe ik het nu heb: index.htm controleert resolutie en stuurt door naar goede pagina start.htm is voor de mensen met 1024x768 hierin zitten 3 frames boven, onder en de middelste die index1.htm heet... index1.htm hier gaan alle mensen heen met 800x600. dit is dezelfde pagina die de andere mensen zien maar dan zonder frames aan de boven en onderkant alle mensen met 640x480 gaan naar een andere pagina die waarschuwt dat de site niet geschikt is met een link naar de 800x600 pagina... Nu wil ik dus dat mensen met 800x600 een waarschuwing krijgen op index1.htm en mensen met 1024x768 niet... hoe doe ik dit?
  • Je had toch al een resolutie controle? Lijkt mij dat je die techniek kan hergebruiken, alleen in plaats van doorsturen naar een andere pagina geef je een melding.
  • Oke dat heb ik natuurlijk al wel geprobeer maar ik krijg het maar steeds niet voor elkaar. dit is mijn script nu: [code:1:fa8795f570] <SCRIPT LANGUAGE="JavaScript"> if ((screen.width == 800) && (screen.height == 600)) function MM_popupMsg(msg) { //v1.0 alert(msg); } </script> <body onLoad="MM_popupMsg('Uw resolutie is 800 x 600. Deze site is gemaakt voor 1024 x 768. U bekijkt nu een aangepast versie van de site.\rAls u de site wil zien in de beste versie verander dan uw resolutie en ga opnieuw naar de site!')"> [/code:1:fa8795f570] Het probleem is dat ik de popup ook krijg op m'n 1024x768 instellingen...
  • Dat komt omdat je de functie rechtstreeks aanroept in de onload zonder dat daar een check op resolutie aan te pas komt. Nu heb je twee mogelijkheden: 1. bouw de check in in de functie, of 2. voer de functie uit afhankelijk van de conditie dat de resolutie 800x600 moet zijn. Nu heeft de 2e mogelijkheid mijn voorkeur aangezien je popupfunctie eigenlijk niets met resoluties te maken heeft en zo kan je de functie ook nog op andere plekken gebruiken mocht dat nodig zijn. En daarnaast zou ik zelf de conditie zo wijzigen dat iedereen die een resolutie lager dan 1024x768 heeft een melding krijgt en niet alleen de bezoekers met 800x600. Dat alles gecombineerd geeft dan bijvoorbeeld: [code:1:da10255fd0] <script type="text/javascript"> function MM_popupMsg(msg) { //v1.0 alert(msg); } window.onload = function() { var w = screen.width; var h = screen.height; if ((w < 1024) && (h < 768)) { MM_popupMsg("Uw resolutie is " + w + " x " + h + ". " + "Deze site is gemaakt voor 1024 x 768. " + "U bekijkt nu een aangepast versie van de site.\n" + "Als u de site wil zien in de beste versie verander " + "dan uw resolutie en ga opnieuw naar de site!" ); } } </script> [/code:1:da10255fd0]
  • [quote:d070cd8521="Annie"]Dat komt omdat je de functie rechtstreeks aanroept in de onload zonder dat daar een check op resolutie aan te pas komt. Nu heb je twee mogelijkheden: 1. bouw de check in in de functie, of 2. voer de functie uit afhankelijk van de conditie dat de resolutie 800x600 moet zijn. Nu heeft de 2e mogelijkheid mijn voorkeur aangezien je popupfunctie eigenlijk niets met resoluties te maken heeft en zo kan je de functie ook nog op andere plekken gebruiken mocht dat nodig zijn. En daarnaast zou ik zelf de conditie zo wijzigen dat iedereen die een resolutie lager dan 1024x768 heeft een melding krijgt en niet alleen de bezoekers met 800x600. Dat alles gecombineerd geeft dan bijvoorbeeld: [code:1:d070cd8521] <script type="text/javascript"> function MM_popupMsg(msg) { //v1.0 alert(msg); } window.onload = function() { var w = screen.width; var h = screen.height; --> if ((w < 1024) && (h < 768)) <-- { MM_popupMsg("Uw resolutie is " + w + " x " + h + ". " + "Deze site is gemaakt voor 1024 x 768. " + "U bekijkt nu een aangepast versie van de site.\n" + "Als u de site wil zien in de beste versie verander " + "dan uw resolutie en ga opnieuw naar de site!" ); } } </script> [/code:1:d070cd8521][/quote:d070cd8521] Waarom moet de code aan die twee eisen voldoen? Als W al kleiner dan 1024 is, is h naar mijn mening ook altijd kleiner dan 768. Of er zijn resoluties die ik niet ken, maar dit lijkt me een beetje dubbel. Staat natuurlijk wel mooi compleet, maar ik heb het in m'n code die op m'n site staat ook niet gedaan :D
  • [quote:225e0289b4="Johnny321"]Waarom moet de code aan die twee eisen voldoen?[/quote:225e0289b4]Moet niet, maar is wel zo volledig. Voor hogere resoluties geldt bijvoorbeeld wel dat er meerdere mogelijkheden zijn.
  • Juist. Je kan natuurlijk ook 2 monitoren naast elkaar hebben staan, en dan klopt die check niet meer. Je kan dus beter alleen op de height checken, of mensen moeten opeens hun dual-monitors op elkaar gaan zetten. ;)
  • Okay, al vragende leert men :lol:

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.