ugrás a tartalomhoz

Felhasználó felbontásának megállapítása?!

chosa91 · 2006. Szep. 21. (Cs), 20.12
A honlapunkat éppen böngésző felhasználó felbontását h. lehet lekérdezni, mert akkor különböző stilusokat csatolna a felbontáshoz.
 
1

Én így csináltam

PogiG · 2006. Szep. 21. (Cs), 20.41
var ns4up = (d.layers) ? 1 : 0;
var ie4up = (d.all) ? 1 : 0;
var ns6up = (d.getElementById&&!d.all) ? 1 : 0;
if (ns4up||ns6up) {maxx = self.innerWidth;maxy = self.innerHeight;}
else if (ie4up) {maxx = d.body.clientWidth; maxy = d.body.clientHeight;}

Végeredményként a maxx és maxy változóban ott van a felbontás.
2

egy picit elegánsabban is lehet :)

wiktor · 2006. Szep. 21. (Cs), 21.34
var Client = {
  viewportWidth: function() {
    return self.innerWidth || (document.documentElement.clientWidth || document.body.clientWidth);
  },

  viewportHeight: function() {
    return self.innerHeight || (document.documentElement.clientHeight || document.body.clientHeight);
  },
  
  viewportSize: function() {
    return { width: this.viewportWidth(), height: this.viewportHeight() };
  }
};
Forrás: http://www.andrewdupont.net/2006/09/09/viewport-dimensions-in-javascript/

Amúgy amikor csak lehet kerülni kell a böngészők azonosítását, gondolok itt az ns4up, ie4up változókra. Célszerű mindig azt az objektumot azonosítani, amit keresel. (object detection)

Részletek: http://www.quirksmode.org/js/support.html
3

SRY!!! :(

chosa91 · 2006. Szep. 21. (Cs), 23.43
Kösz, egyúttal bocs, de a hozzá nem értésem végett következő kérdésem lenne/ kérésem:

én azt szeretném pl.:

if (az oldal magassága == 1600*1200) {
echo <style> @import("style1612.css")</style>
}elseif (az oldal magassága == 1024*768) {
echo <style> @import("style1076.css")</style>
}

szerintem valahogy át lehet látni, szoval azt szeretném elérni, hogy valaki leirja h. kéne beillesztenem a fennt kitalált példám alapján mivel php js combo lenne, mint látni azt, csak a js-hez egyáltalán nem értek...(...sajna...).
Szóval ha valaki lenne olyan szives, leirhatná nekem a "megoldást"!

Előre is köszönöm!

ui.: télleg bocs, a tudatlanságomért
4

Képernyő felbontás

Anonymous · 2006. Szep. 22. (P), 08.29
Mint már oly sokszor el lett mondva, a képernyő felbontása nem egyenlő a böngésző felbontásával. Éppenséggel lehet, hogy a képernyő felbontása egy 3000 képpont széles kivetítővászon, de a böngésző csak 800 széles helyet foglal el. Ezért kell a viewport méretét nézni.

Egyébként neked ez kell: http://www.themaninblue.com/experiment/ResolutionLayout/

Gondolkodj azon is, hogy nem tudod-e úgy megoldani, hogy ne kelljen JavaScriptet használni, mint például itt: http://www.themaninblue.com/writing/perspective/2004/09/21/
5

(Célom:)

chosa91 · 2006. Szep. 22. (P), 10.18
Szóval én azért akarnám megtudni a felhasználó felbontását, hogy 1.: statisztika, 2.: full képernyősen vagyis legalábbis max képernyősen futna az oldal megnyitása után, és ehhez ugyan még nem kell a felbontás, de középre igazitanám a div-emet, bizonyos style-megadással, felbontásonként változtatva az értékeket.
6

nem kell js

Kenguru · 2006. Szep. 22. (P), 13.49
ha csak azért kell a felbontás hogy középre igazits akkor nem kell js. css-el középre tudod igazítani a div edet.

position: absolute;
left: 50%;
margin-left: -380px;

Ha a DIV ed 760px akkor annak fel 380px a példa szerint.
7

Középre vízszintesene

Jano · 2006. Szep. 22. (P), 14.39
CSS-sel egész oldalt nem jó abszolút pozicionálással középre igazítani mert ha kisebb az ablak akkor a negatív margo miatt kilóg az ablakból és a bal oldalra kilogó tartalomhoz nem ad scrollt a böngésző!

Középre igazítás CSS-sel vízszintesen

Full screent meg felhasználók utálják!
8

kilóg

Kenguru · 2006. Szep. 22. (P), 14.52
Ha kisebb az ablak éa balra kilóg akkor jobbra is ki kell lógnia és ezért lesz scroll. Van több megoldás különben. Full screen meg valóban idegesítő :)
9

Ne okoskodj, próbáld ki!

Jano · 2006. Szep. 22. (P), 17.40
Olvasd el kérlek a postomat mégegyszer figyelmesen!

a bal oldalra kilogó tartalomhoz nem ad scrollt a böngésző