Auslesen von 'width' im IE eines ausgeblendeten Images
Frangoo
- javascript
Hallo,
ich möchte einfach nur das Attribute "width" von einem auf "display:none;" stehenden img auslesen.
Wieso macht der IE das mal wieder nicht??? Ich würde es verstehen, wenn die Informationen nicht im HTML stehen würden und er das Bild ersteinmal darstellen müsste, aber dem ist ja nicht so - er muss einfach nur diesen "Knoten" auslesen.
Weiß jemand, warum?
10000Dank für jede Hilfe !!
Grüße,
Frangoo
ich möchte einfach nur das Attribute "width" von einem auf "display:none;" stehenden img auslesen.
Wieso macht der IE das mal wieder nicht??? Ich würde es verstehen, wenn die Informationen nicht im HTML stehen würden und er das Bild ersteinmal darstellen müsste, aber dem ist ja nicht so - er muss einfach nur diesen "Knoten" auslesen.
Ich vermute. der MSIE macht das schon, wenn man ihm auch valides vorsetzt, bzw das Auslesen richtig angeht.
mfg Beat
Hi,
danke schonmal für eure Antworten.
Ich vermute. der MSIE macht das schon, wenn man ihm auch valides vorsetzt, bzw das Auslesen richtig angeht.
mfg Beat
Ich lese den Knoten so aus:
var imgWidth = ulDatabase.getElementsByTagName("li")[selectItem].getElementsByTagName("img")[0].width;
Wenn ich das Bild aber auf "display:block" setze, funktioniert es ja auch im IE!
Ich lese den Knoten so aus:
Und was hindert dich daran, die von mir vorgeschlagene Variante auszuprobieren?
Ich lese den Knoten so aus:
Und was hindert dich daran, die von mir vorgeschlagene Variante auszuprobieren?
oder gar vorzuziehen. width scheint nicht nur der Name eines Attributs zu sein, sondern auch als Methode verwendet zu werden.
mfg Beat
Ich lese den Knoten so aus:
var imgWidth = ulDatabase.getElementsByTagName("li")[selectItem].getElementsByTagName("img")[0].width;
Wenn ich das Bild aber auf "display:block" setze, funktioniert es ja auch im IE!
Unberücksichtigt von display:
Ich habe festgestellt
<img src="does not exist" width="100" alt="alt">
Das Bild existiert nicht.
FF meldet eine width von "18", MSIE7 meldet eine width von "100".
So what's the difference?
MSIE liest das Attribut aus. FF gibt die computed width aus, in dem Fall die width von "alt".
In dem Fall ist doch das FF Verhalten überraschend?
mfg Beat
So what's the difference?
MSIE liest das Attribut aus. FF gibt die computed width aus, in dem Fall die width von "alt".In dem Fall ist doch das FF Verhalten überraschend?
Also bei mir konnte ich das nicht nachbilden - FF liest brav das width-Attribut aus (mit img.width).
Welche Methode verwendest du?
MSIE liest das Attribut aus. FF gibt die computed width aus, in dem Fall die width von "alt".
In dem Fall ist doch das FF Verhalten überraschend?Also bei mir konnte ich das nicht nachbilden - FF liest brav das width-Attribut aus (mit img.width).
Welche Methode verwendest du?
function ax(){
var imgWidth =
document.getElementsByTagName("li")[0].getElementsByTagName("img")[0].width;
alert(imgWidth);
}
window.onload = ax;
mfg Beat
er muss einfach nur diesen "Knoten" auslesen.
wie liest du den Knoten aus? Mit http://de.selfhtml.org/javascript/objekte/node.htm#attributes@title=attributes?
»» er muss einfach nur diesen "Knoten" auslesen.
wie liest du den Knoten aus? Mit http://de.selfhtml.org/javascript/objekte/node.htm#attributes@title=attributes?
Oh !!! :) Das hatte ich doch glatt falsch verstanden und zu schnell gelesen .... sorry !
Ich hab es jetzt mal probiert, aber es klappt leider auch nicht. Ausserdem gibt es ja wie in SELFHTML beschrieben folgendes Problem:
Die Reihenfolge, in der die Attribute im attributes-Array gespeichert sind, ist nicht definiert. Sie können sich nicht darauf verlassen, dass attributes[0] tatsächlich das erste, im HTML-Code notierte, Attribut ist. Diese Notation ist nur dazu gedacht, einfache Zählschleifen zu erlauben
Das src-Attribute liest mir der IE aus. Aber es sieht wohl so aus, dass er bei auf "display:none" stehenden Elementen nicht einmal die im HTML stehenden Dimension-Attribute auslesen kann :-([
Hi,
ich möchte einfach nur das Attribute "width" von einem auf "display:none;" stehenden img auslesen.
Wieso macht der IE das mal wieder nicht??? Ich würde es verstehen, wenn die Informationen nicht im HTML stehen würden und er das Bild ersteinmal darstellen müsste, aber dem ist ja nicht so
Es gelingt mir trotzdem weder über width, offsetWidth, getAttribute noch getAttributeNode.
Bei Nutzung von visibility statt display zum Ausblenden ist das anders - also stelle entweder darauf um (notfalls plus absoluter Positionierung ausserhalb des sichtbaren Bereichs, wenn du den dabei freigehaltenen Platz nicht brauchen kannst) -
- er muss einfach nur diesen "Knoten" auslesen.
MfG ChrisB