HTMLWorld - HTML, CSS, JavaScript, PHP, Java, Flash und vieles mehrHTMLWorld:   Home | Impressum
 

 
 

Anzeige 
 
HTMLWorld » Forum

Thema anzeigen - Javascript: Div Scrolling ruckelt im IE8!

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Javascript: Div Scrolling ruckelt im IE8!

 

Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   JavaScript
Vorheriges Thema:
Nächstes Thema:  
Autor Nachricht
daru



Anmeldungsdatum: 02.11.2009
Beiträge: 1

BeitragVerfasst am: 02.11.2009 11:16:23    Titel: Javascript: Div Scrolling ruckelt im IE8! Antworten mit Zitat

Hallo,

ich nutze ein Javascript zum scrollen eines, bzw zweier Div-Inhalte.
Das klappt auch alles ganz gut, leider ruckelt das Ganze recht startim IE8. In alle anderen Browsern scroll es sich flüssig (inkl im IE7 Kompatibilätsmodus)

Komischerweise, wenn ich im IE8 auf "Extras" -> "Entwicklertools" gehe, um mal zu schauen, dann scrollt es sich ganz normal! Schalte ich die Tools aus, ruckelt es wieder..

Ich weiß nicht woran es liegen kann..

Hier mal der JS Code:

Code:

var dom = document.getElementById?1:0;
var ns4 = document.layers?1:0;
present = "first";
onResize = loadAgain;

function loadAgain() {

if (ns4)
self.location.reload();
}


function init() {

 if (dom) {
 layer = document.getElementById("content").getElementsByTagName("div");
 layer['first'].style.visibility = "hidden";
 layer['first'].style.top = 0;

 }
 else if(ns4) {
 layer = "document['content'].document";
 eval(layer + "['first']" + '.visibility = "hidden"');
 eval(layer + "['first']" + '.top = -15');
 
 }
}


function change(page) {

 if (dom) {
 layer[present].style.visibility = "hidden";
 layer[page].style.visibility = "visible";
 layer[page].style.top = 0;
 }
 else if(ns4) {
 eval(layer + "[present]" + '.visibility = "hidden"');
 eval(layer + "[page]" + '.visibility = "visible"');
 eval(layer + "[page]" + '.top = -15');
 }
 present = page;
 
}


function scroll(direction, speed) {

 if (dom) {
 var layertop = parseInt(layer[present].style.top);
 var scrollheight = (document.getElementById('content').offsetHeight - layer[present].offsetHeight);
 }
 else if (ns4) {
 var layertop = parseInt(document['content'].document[present].top);
 var scrollheight = (document['content'].clip.height - document['content'].document[present].clip.height);
 }

 if (direction == "down" && layertop - 10 > scrollheight) {

  if (dom)
  layer[present].style.top = (layertop - speed) + "px";

  else if(ns4)
  document['content'].document[present].top = (layertop - speed);
 }

 else if (direction == "up" && layertop < -0 ) {

  if(dom)
  layer[present].style.top = (layertop + speed) + "px";

  else if(ns4)
  document['content'].document[present].top = (layertop + speed);
 }

timer = setTimeout("scroll('" + direction + "', " + speed + ")", 10);
}


Und hier der zugehörige HTML-part (auszug)
Code:

<body  onLoad="init(); change('konzept');">
...

    <div id="main">   
   
       <div id="content">
      <div style="visibility: hidden;" id="first" class="scrolling"></div>
      <div id="konzept" class="scrolling"> 
         
            TEXT TEXT TEXT TEXT <br>
            TEXT TEXT TEXT TEXT <br>
            TEXT TEXT TEXT TEXT <br>.. ....... ......
                       
      </div><!-- ENDE KONZEPT -->                   
      </div><!-- ENDE CONTENT --> 
       
        <div id="scrollbar">
        <div class="scrollup"><a href="javascript: ;" onmouseover="scroll('up',5);" onmouseout="stop();"><img src="<?php echo $this->baseurl ?>/images/scroll_up.gif" /></a></div>
        <div class="scrolldown"><a href="javascript: ;" onmouseover="scroll('down',5);" onmouseout="stop();"><img src="<?php echo $this->baseurl ?>/images/scroll_down.gif" /></a></div>       
        </div>
   
   
    </div><!-- END MAIN -->
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Kambfhase
Häufiger Poster


Anmeldungsdatum: 19.03.2006
Beiträge: 235

BeitragVerfasst am: 02.11.2009 12:55:07    Titel: Antworten mit Zitat

Wieso nimmst du nicht einfach CSS:

Code:
overflow:scroll;


Siehe:

https://developer.mozilla.org/en/CSS/overflow

mfG Hase
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   JavaScript
Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.