Jochen: Woran stößt sich der IE hier?

Moin!
Ich habe ein Problem mit dem Internet Explorer. Und zwar bei folgendem Code:

slideWidthOpen = setInterval("slideCloseBoxWidthHalf('" + box + "', '" + width + "', '" + me + "')", 20);

Aber wieso? Firefox und Opera haben damit keine Probleme. Es ist also kein Fehler drin. Aber der IE findet diesen trotzdem :-P Wieso?

Danke schön. Jochen

  1. Hallo Jochen,

    Ich habe ein Problem mit dem Internet Explorer.

    Da bist du nicht der Einzige.

    Aber wieso?

    Du müsstest uns schon das Problem sagen. Gibt es einen Error? Was für einen? Was soll eigentlich passieren?
    Eine Beispielseite wäre auch nich schlecht...

    Gruß,
    Dodwin

    1. Moin!

      Du müsstest uns schon das Problem sagen. Gibt es einen Error? Was für einen? Was soll eigentlich passieren?

      "Das Objekt unterstützt diese Eigenschaft oder Methode nicht" <- Das ist die Fehlermeldung. Es soll einfach ein Intervall gestartet werden. Ich habe jetzt mal eine Funktion in eine Testdatei eingefügt. Aber jetzt meldet der IE den Fehler eine Zeile bevor der Interval gestartet werden soll. Ich bin ratlos...

      Eine Beispielseite wäre auch nich schlecht...

      Geht leider nicht. Aber hier der QUelltext:

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

      <html>
      <head>
       <title></title>

      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
       <meta http-equiv="Content-Script-Type" content="text/javascript">

      <style type="text/css">
      body{
       font-family: Georgia, "Times New Roman", Times, serif;
      }
      h2{
       border-bottom-style: dotted;
       border-bottom-width: 1px;
       border-bottom-color: #222222;
       color: #222222;
       padding-bottom: 0.2em;
       margin-right: 5em;
       font-size: 1.8em;
      }
      p#scrollHeight{
       width: 300px;
       text-align: justify;
      }
      div.text{
       width: 200px;
       margin-left: 8em;
       background-color: #222222;
       padding: 0 3px 0 3px;
       color: #FFFFFF;
       font-size: 0.8em;
       overflow: hidden;
      }
       </style>

      <script type="text/javascript">

      var i = 0;
      function OpenBoxHeight(box, height, me){
       openBoxHeight = window.setInterval("slideHeightOpen('" + box + "', '" + height + "', '" + me + "')", 20);
      }
      function slideHeightOpen(box, height, me){
       document.getElementById(box).style.height = i + me;
       document.getElementById(box).style.display = "block";
       i = i + 5;
       if( i >= height ){
        window.clearInterval(openBoxHeight);
        i = 0;
       }
      }
       </script>
      </head>

      <body>
       <h2>Ein Div ausklappen (height)</h2>
       <p>
        <a href="#" onclick="OpenBoxHeight('openBoxHeight', '225', 'px');return false">Komplett ausklappen</a> | <a href="#" onclick="OpenBoxHeight('openBoxHeight', '95', 'px');return false">Halb ausklappen</a>
       </p>
       <div style="height: 200px;">
        <div id="openBoxHeight" class="text" style="display:none; height: 0px;">
         Lorem ipsum dolor sit amet, consectetur adipisicing elit,
         sed do eiusmod tempor incididunt ut labore et dolore magna
         aliqua. Ut enim ad minim veniam, quis nostrud exercitation
         ullamco laboris nisi ut aliquip ex ea commodo consequat.
         Duis aute irure dolor in reprehenderit in voluptate velit esse
         cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
         cupidatat non proident, sunt in culpa qui officia deserunt mollit
         anim id est laborum.
        </div>
       </div>
      </body>
      </html>

      Danke für die Hilfe. Servus, Jochen

      1. <script type="text/javascript">

        var i = 0;
        function OpenBoxHeight(box, height, me){
        openBoxHeight = window.setInterval("slideHeightOpen('" + box + "', '" + height + "', '" + me + "')", 20);
        }

        Mach's dir einfacher:
        openBoxHeight = window.setInterval(
        function() {
        slideHeightOpen(box, height , me)
        }, 20);
        }

        Struppi.

        --
        Javascript ist toll (Perl auch!)
        1. Moin!

          Mach's dir einfacher:
          openBoxHeight = window.setInterval(
          function() {
          slideHeightOpen(box, height , me)
          }, 20);
          }

          :-O Ich bin ent-/begeistert. Genial. Ich wusste nicht, dass es so geht. Vielen Dank. Ich werde später ausprobieren, ob der IE das rafft.
          Danke und Servus, Jochen