Masterix: scrollen von übergrossem layer vermeiden

Beitrag lesen

Also doch Javascript?

ja.

Wie kann ich also - bevor der Layer sichtbar ist - die scrollbar vermeiden?

Ich rate mal ; du testest im IE? Der hat seine Schwierigkeiten mit den Scrollbars, entwickle deinen nerven zuliebe mit einem Browser[1].

nein mit FF

ich habe mich schon mit mit den CSS Eigenschaften visibility und display versucht, aber komme nicht ganz klar damit.

Die Scrollbars werden mittels overflow gesteuert.

stimmt, overflow hab ich vergessen zu erwähnen.
Hier der Code.

  
<script language="javascript">  
function SetOpacity(elem, opacityAsInt)  
{  
 var opacityAsDecimal = opacityAsInt;  
  
 if (opacityAsInt > 100)  
  opacityAsInt = opacityAsDecimal = 100;  
 else if (opacityAsInt < 0)  
  opacityAsInt = opacityAsDecimal = 0;  
  
 opacityAsDecimal /= 100;  
 if (opacityAsInt < 1)  
  opacityAsInt = 1; // IE7 bug, text smoothing cuts out if 0  
  
 elem.style.opacity = opacityAsDecimal;  
 elem.style.filter  = "alpha(opacity=" + opacityAsInt + ")";  
}  
  
function FadeOpacity(elemId, fromOpacity, toOpacity, time, fps)  
{  
  
 window.alert("overflow: " + document.getElementById(elemId).style.overflow);  
  
  
 var steps = Math.ceil(fps * (time / 1000));  
 var delta = (toOpacity - fromOpacity) / steps;  
  
 FadeOpacityStep(elemId, 0, steps, fromOpacity, delta, (time / steps));  
}  
  
function FadeOpacityStep(elemId, stepNum, steps, fromOpacity, delta, timePerStep)  
{  
    SetOpacity(document.getElementById(elemId), Math.round(parseInt(fromOpacity) + (delta * stepNum)));  
  
    if (stepNum < steps) {  
        setTimeout("FadeOpacityStep('" + elemId + "', " + (stepNum+1) + ", " + steps + ", " + fromOpacity + ", " + delta + ", " + timePerStep + ");", timePerStep);  
    }  
    else  
    {  
     window.alert("nachher :" + document.getElementById(elemId).style.opacity);  
    }  
  
}  
</script>  

  
  
<a href="javascript:FadeOpacity('globalcontainer', 0, 100, 10000, 2); ">KLICK</a>  
  
<div id="globalcontainer">das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER<br>das ist mein LAYER</div>  
  
  
  
<script language="javascript">  
  
document.getElementById("globalcontainer").style.opacity = "0";  
// document.getElementById("globalcontainer").style.display = "none";  
  
  
  
  document.getElementById(elemId).style.overflow = "hidden";  
  window.alert("nachher :" + document.getElementById(elemId).style.opacity);  
  
  
</script>  

Danke für Eure Hilfe