Toon posts:

[js] layer centreren op scherm, maar probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik krijg het prima voor elkaar om een layer te centreren op het scherm als de knop zichtbaar op het scherm staat. (Dus je hoeft niet te scrollen om de knop te zien).

Maar het gaat fout als ik een lange pagina heb en de knop voor het tonen van de layer onderaan staat. Dan wordt de layer wel gecentreerd getoond, maar op dezelfde positie als dat het beeld niet zou hebben gescrolld.

Beetje onduidelijk ...

Dit scriptje gebruik ik ( en ik heb echt al behoorlijk gezocht hoor!)

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
//get platform info
agt  = navigator.userAgent.toLowerCase();
ie  = (document.all) ? 1:0
ie4 = (agt.indexOf('msie 4')!=-1) ? 1:0
ie5 = (agt.indexOf('msie 5')!=-1) ? 1:0
ie6 = (agt.indexOf('msie 6')!=-1) ? 1:0
ns4 = (document.layers && parseInt(navigator.appVersion)>=4) ? 1:0
ns6 = (document.getElementById) ? 1:0
win = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) )
mac = (agt.indexOf("mac")!=-1);
imgs = (document.images) ? 1:0

function toggleLayer(id){
   LeftPosition = (screen.width) ? (screen.width-400)/2 : 0;
   TopPosition  = (screen.height) ? (screen.height-400)/2 : 0;
   if(ie){
      obj = document.all(id);     
   }else if(ns6){
      obj = document.getElementById(id);      
   }
   // Alleen uitvoeren indien het 1 van de bovenstaande browsers is
   if(ie || ns6){
      document.getElementById(id).style.left = LeftPosition + 'px';
      document.getElementById(id).style.top  = TopPosition + 'px';
      (obj.style.visibility == "hidden") ? obj.style.visibility = "visible" : obj.style.visibility = "hidden"
   }
}

[ Voor 6% gewijzigd door Verwijderd op 22-04-2003 15:36 ]


  • shlammod
  • Registratie: Juni 2001
  • Laatst online: 08-08 23:52

shlammod

dus.... enzo....

Wat is nu precies je vraag?

it's all fun and games, 'till someone loses an eye. Then it's just fun you can't see


Verwijderd

Topicstarter
Of iemand weet hoe ik wel altijd het middelpunt van de browserwindow kan berekenen onafhankelijk van het feit of ik wel of niet scroll.

Verwijderd

Topicstarter
Nah goed, toch nog verder gezocht en het volgende werkt:

PHP:
1
 TopPosition  = (document.body.clientHeight) ? ((document.body.clientHeight/2)+document.body.scrollTop-200) : 0;


Dit werkt misschien alleen in IE 6+
Ik gebruik het intern dus voor mij geeft dat niet.

Ik hoop dat iemand anders er in de toekomst nog iets aan kan hebben.

  • Willem
  • Registratie: Februari 2001
  • Laatst online: 22-08 22:08
Zowel horizontaal als vertikaal centreren? Ga je uit van een vaste grootte van een div?
Zo ja, dat is geen punt :)

Motor (of auto) onderhoud bijhouden