• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Div nach Schollen oben am Bildschirm

vupibi

Neues Mitglied
Hallo.

Ich habe mehrere Objekte, welche nach dem Schollen oben Am Bildschirm bleiben sollen.

Das script dazu klappt auch:

Code:
document.onscroll = function () { 
var x = document.body.scrollTop
if (x > 300) 
document.getElementById('Test').style.top = x + 'px'; 
else 
document.getElementById('Test').style.top = '300px'; 
} 

</script> 




<div style='height:1000px;'> 
<div id='Test' style='width:50px; height:50px; position:absolute; top:300px; left:200px; background-color:red;'>2</div> 
</div>

Ich habe allerdings 2 Objekte, und ich bekomme es nicht hin, dass beide Objekte oben bleiben.

Also z.b.

Code:
<script type='text/javascript'> 


document.onscroll = function () { 
var pos = window.pageYOffset; 
if (pos > 300) 
document.getElementById('TestBox').style.top = pos + 'px'; 
else 
document.getElementById('TestBox').style.top = '300px'; 
} 


</script> 


<script type='text/javascript'> 


document.onscroll = function () { 
var x = document.body.scrollTop
if (x > 300) 
document.getElementById('Test').style.top = x + 'px'; 
else 
document.getElementById('Test').style.top = '300px'; 
} 


</script> 


<div style='height:1000px;'> 

<div id='TestBox' style='width:50px;height:50px;position:absolute;top:300px;background-color:red;'>1</div> 


 <div id='Test' style='width:50px; height:50px; position:absolute; top:300px; left:200px; background-color:red;'>2</div>
 
</div>

klappt nicht. Wieso?

Also ich brauche 2 Objekte, die unabhängig voneinander oben am Bildschirmrand bleiben. Position:fixed bringt mir nichts, die dürfen erst nach dem sie beim Schollen oben ankommen oben bleiben.

Danke!
 
es kann sein, dass ich mich grad täusche, aber afaik wird die funktion in document.onscroll überschrieben, wenn du das zweite mal
Code:
[LEFT][COLOR=#333333]document.onscroll = function () {
aufrufst.
Probier mal beide Teile in eine Funktion zu packen [/COLOR][/LEFT]
 
Zurück
Oben