Property überwachen (watch, propertychange), Höhenänderung
Christian S.
- javascript
Hi,
ich habe ein Element, dessen Höhen- und Breitenänderung ich überwachen möchte.
Innerhalb dieses Elements (div), befindet sich ein weiteres Element, dass seine Größe z.B. nach einem AJAX request ändert oder wenn man z.B. clientseitig weitere Elemente hinzufügt.
Dadurch ändert sich natürlich auch die Größe des Elternelements.
Ich habe folgendes versucht:
var o = element.style; // Elternelement
var self = this;
if(o.watch)
{
o.watch("height", function(id, oldValue, newValue)
{
// tuwas();
});
o.watch("width", function(id, oldValue, newValue)
{
// tuwas();
});
}
else
{
o.onpropertychange = function()
{
if(window.event && window.event.propertyName == "height" || window.event.propertyName == "width")
{
// tuwas();
}
};
}
Dasselbe hab ich auch probiert mit:
var o = element;
und dann mit den Properties offsetHeight und offsetWidth.
Leider alles ohne Erfolg (IE 7 und FF).
Weiß jemand eine andere Möglichkeit? Mir fiele nur noch die unschöne Möglichkeit in einem Interval ständig die Höhe/Breite abzufragen.
Gruß
Christian
Hallo,
Innerhalb dieses Elements (div), befindet sich ein weiteres Element, dass seine Größe z.B. nach einem AJAX request ändert oder wenn man z.B. clientseitig weitere Elemente hinzufügt.
Dadurch ändert sich natürlich auch die Größe des Elternelements.
Kannst Du nicht das den Inhalt verändernde Event (z.B. bei Ajax das Hinzufügen des neuen Contents) für die Abfrage nutzen?
Grüße Basti
Hallo,
Innerhalb dieses Elements (div), befindet sich ein weiteres Element, dass seine Größe z.B. nach einem AJAX request ändert oder wenn man z.B. clientseitig weitere Elemente hinzufügt.
Dadurch ändert sich natürlich auch die Größe des Elternelements.Kannst Du nicht das den Inhalt verändernde Event (z.B. bei Ajax das Hinzufügen des neuen Contents) für die Abfrage nutzen?
Grüße Basti
Ginge vermutlich. Ist aber aus folgenden Gründen unakzeptabel und schwierig.
Gruß!
Hallo,
... hast du bedacht, dass die Styles direkt formatiert sein müssen
http://de.selfhtml.org/css/formate/direkt.htm, um die Eigenschaften abfragen zu können?
Gruß plan_B
Hi,
Dadurch ändert sich natürlich auch die Größe des Elternelements.
ja, aber sie wird nicht auf einen anderen Wert _gesetzt_. Hast Du mal an innerHTML gedacht?
Cheatah