do określania szerokości strony przeglądarki używam screen.availWidth - i wszystko gra ... dopóki user nie włączy bocznego paska z zakładkami w FF - jak włączy strona się źle wyświetla bo zmienna nie zmienia wartości - ma ktoś pomysł jak to obejść ?
chyba coś pomyliłeś
screen.availWidth
oznacza poziomą rozdzielczość monitora minus pasek zadań windowsa (jeśli jest ustawiony po bokach)
to się pokrywa z szerokością strony tylko kiedy przeglądarka jest zmaksymalizowana co jest bez sensu
chodziło Ci raczej o window.innerWidth
które określa dostępną szerokość wnętrza okna przeglądarki
poza tym używasz javascriptu do pozycjonowania elementów na stronie? tym powinieneś się zająć w css używając wartości procentowych, min-width, max-width itp.
Twoja strona w ogóle działa przy wyłączonym javascriptcie?
unikalna_nazwa napisał(a)
chyba coś pomyliłeś
screen.availWidth
oznacza poziomą rozdzielczość monitora minus pasek zadań windowsa (jeśli jest ustawiony po bokach)
to się pokrywa z szerokością strony tylko kiedy przeglądarka jest zmaksymalizowana co jest bez sensuchodziło Ci raczej o
window.innerWidth
które określa dostępną szerokość wnętrza okna przeglądarkipoza tym używasz javascriptu do pozycjonowania elementów na stronie? tym powinieneś się zająć w css używając wartości procentowych, min-width, max-width itp.
Twoja strona w ogóle działa przy wyłączonym javascriptcie?
masz rację - stronę robiłem 10 lat temu (stąd wszystko w js) i nie przyjrzałem się dokładnie - availWidth jest używany do powiększenia okna a potem przy założeniu że okno ma cały ekran rozmieszczam wg tego elementy - dopóki nie było paska działo ok teraz ktoś zwrócił mi uwagę że strona jest za szeroka ...;D
wiem że blamaż, na swoje usprawiedliwienie dodam że to jedyna strona jaką robiłem w życiu ...
dodano:
a już wiem czemu wtedy nie używałem window.innerWidth - otóż internet explorer poniżej wersji 9 nie obsługiwał tego po prostu - jeżeli to zmienię to właściciele starszych ie nie będą widzieć strony ...
da się to obejść takim zestawem instrukcji:
if( typeof( window.innerWidth ) == 'number' ) {
//Non-IE
xx = window.innerWidth;
yy = window.innerHeight;
} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
//IE 6+ in 'standards compliant mode'
xx = document.documentElement.clientWidth;
yy = document.documentElement.clientHeight;
} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
//IE 4 compatible
xx = document.body.clientWidth;
yy = document.body.clientHeight;
}
tak działa wszędzie ...
dzieki mi sie przydalo