JavaScript - ungültiges Argument IE8

9

Ich habe ein kleines JavaScript-Problem. Der Code funktioniert in Opera und Firefox, aber nicht in Internet Explorer 8. Weiß jemand warum?

%Vor%

Ich lerne gerade Javascript. Jede Rückmeldung erwünscht. Simon

    
Simon 29.06.2011, 20:17
quelle

2 Antworten

9

Wenn object.width kleiner als 16 ist

%Vor%

dann wird dies eine Zeichenkette mit einem negativen Vorzeichen an der Vorderseite erzeugen, was illegal ist, da die Breiten nicht negativ sein müssen.

Sie können das beheben, indem Sie

sagen %Vor%

und ähnlich für die Höhe.

Viele Browser ignorieren ungültige Inhalte, aber der IE in bestimmten Modi ist strenger, so dass Sie in den anderen wahrscheinlich nur einen stummen Fehler erhalten.

    
Mike Samuel 29.06.2011 20:41
quelle
2

Ich denke, es hat mit hover.setAttribute("class", "myarea"); zu tun. Wenn IE 8 in IE 7 oder niedriger ausgeführt wird, funktioniert dies nicht. Dann müssen Sie hover.className = 'myarea' (von allen Browsern unterstützt) verwenden.

  

Der Parameter sAttrName erfordert den Namen des gewünschten Inhaltsattributs und nicht den   DOM-Attribut (Document Object Model) Zum Beispiel erfordert diese Methode im IE8-Modus nicht länger, dass sAttrName "className" ist, wenn ein CLASS-Attribut gesetzt, abgerufen oder entfernt wird. Frühere Versionen von Internet Explorer und Internet Explorer 8 im Kompatibilitätsmodus erfordern sAttrName, um den entsprechenden DOM-Eigenschaftsnamen anzugeben.

Ссылка

Überprüfen Sie den Modus IE wird ausgeführt.

    
Saxoier 29.06.2011 20:30
quelle