Edit 21.08.2016 (22:45): Achtung neue Version 3 verwenden.
Für SV 2.7 ist sie angehängt, für 2.8/2.9 in GitHub (widget.min.js und widget.js)
Diejenige für SV 2.7 hat basic.activelist integriert.
Details siehe Post #37 und #41.
Edit 22.08.2016 (11:25): Version 3 für 2.7 war das falsche Zip, Version 3b ist nun das richtige (siehe Post #43)
Hallo zusammen
Nachdem ich mich eingehend mit der langen Ladezeit der smartVISU auseinandergesetzt hatte, konnte ich eine beachtliche Ursache finden und beheben. Dadurch laden die Seiten ca. 25% schneller.
Die Verbesserung betrifft die Aktualisierung der Werte, welche nach dem eigentlichen Laden der Seite von KNX gelesen werden. Diesen Teil konnte ich um ca. 90% (!) beschleunigen. Damit wird also dieses hässliche Flackern der einzelnen Widgets deutlich reduziert.
Ich konnte keine negativen Auswirkungen feststellen, wäre aber für weitere Tester dankbar.
Es muss eigentlich nur eine einzige Datei ersetzt werden, nämlich die widget.min.js im Ordner widgets.
Der Vollständigkeit halber könnt ihr auch widget.js (ohne min) ersetzen, im Betrieb wird diese normalerweise aber nicht benutzt.
Die Dateien im Anhang sind für Version 2.7. Bei Bedarf werde ich auch diejenigen für 2.8 anpassen - ich muss bei mir aber 2.8 erst noch zum Laufen bringen.
Da Apollo seit längerem nicht reagiert, kann ich mir den Pull Request wohl sparen.
Die Erklärung für jQuery-Kenner:
Die Events der einzelnen Widgets wurden alle per delegate ans Document gebunden und an die Widgets per Selector weitergegeben.
Die Abarbeitung der Events ist damit sehr ineffizient, weil für jedes einzelne Widget der ganze DOM-Baum nach oben durchlaufen werden muss.
Ich binde die Events nun mit on direkt an die einzelnen Widgets und unterbinde das Bubbling nach oben mit stopPropagation.
Gruss
Stefan
Kommentar