diff --git a/README.md b/README.md index b3bb8e9..d2f5251 100644 --- a/README.md +++ b/README.md @@ -493,6 +493,7 @@ Zeigt ein Bild an. |value||siehe Parameter [value](#konfiguration-der-elemente)| |source||URL die auf ein Bild verweist. Bei direkter Eingabe von URLs müssen Doppelpunkte entsprechend ersetzt werden. (siehe auch [Ersetzungen](#ersetzungen)) [string]| |height||legt die absolute Höhe des Bildes in Pixeln fest [string]| +|lazyload|true|schaltet das dynamische Nachladen aus bzw. ein [boolean]| ### Level Element IFrame iframe Bettet ein iframe ein. @@ -501,6 +502,7 @@ Bettet ein iframe ein. |reading||siehe Parameter [reading](#konfiguration-der-elemente)| |value||siehe Parameter [value](#konfiguration-der-elemente)| |source||URL deren Inhalt im Panel angezeigt werden soll. Bei direkter Eingabe von URLs müssen Doppelpunkte entsprechend ersetzt werden. (siehe auch [Ersetzungen](#ersetzungen)) [string]| +|lazyload|true|schaltet das dynamische Nachladen aus bzw. ein [boolean]| ### Level Element Menu btn Zeigt einen Button an, der beim Klicken ein DropDown-Menü öffnet. Wenn dieses Element nicht definiert ist wird ein Standard-Button angezeigt, sobald mindestens ein [Menüeintrag](#level-element-menu-menu) definiert ist. diff --git a/public/CHANGELOG.md b/public/CHANGELOG.md index 507d814..8632767 100644 --- a/public/CHANGELOG.md +++ b/public/CHANGELOG.md @@ -1,3 +1,14 @@ +# v4.7.0 (05.01.2025) +## Core +- Optimization of Reconnect and Refreshing Session +## Image +- new Option for disabling lazy loading +## iFrame +- new Option for disabling lazy loading +## Chart +- Bugfix if no LogData from FHEM received +## Devices View +- Bugfix if no route is defined # v4.6.1 (27.12.2024) ## Slider - Bugfix for setting Height of vertical slider diff --git a/src/components/PanelMainChart.vue b/src/components/PanelMainChart.vue index d2dfd41..6de5ace 100644 --- a/src/components/PanelMainChart.vue +++ b/src/components/PanelMainChart.vue @@ -81,7 +81,7 @@ logData = await fhem.request('text', cmd.join(' ')) data = [] - rows = logData.split('\n') + if(logData) rows = logData.split('\n') if(rows.length > 0) { for(const row of rows) { diff --git a/src/components/PanelMainIframe.vue b/src/components/PanelMainIframe.vue index f5b42ee..2cd2b9c 100644 --- a/src/components/PanelMainIframe.vue +++ b/src/components/PanelMainIframe.vue @@ -14,8 +14,10 @@ const extContent = ref() const content = computed(() => { - let res = { - source: fhem.handleDefs(props.el.iframe, ['source'],['']).source, + let src = fhem.handleDefs(props.el.iframe, ['source', 'lazyload'],['', true]), + res = { + source: src.source, + lazy: src.lazyload ? 'lazy' :'eager', width: extContent.value && extContent.value.scrollWidth ? extContent.value.scrollWidth : 0, height: /=maximized$/.test(fhem.app.currentView) ? (window.innerHeight - 170) : props.height } @@ -30,7 +32,7 @@ :src="content.source" :width="content.width" :height="content.height" - loading="lazy" + :loading="content.lazy" style="border:none;"> diff --git a/src/components/PanelMainImage.vue b/src/components/PanelMainImage.vue index c348a72..0d0fffa 100644 --- a/src/components/PanelMainImage.vue +++ b/src/components/PanelMainImage.vue @@ -14,7 +14,7 @@ const loaded = ref(false) const image = computed(() => { - return fhem.handleDefs(props.el.image, ['source','height'],['', 'auto']) + return fhem.handleDefs(props.el.image, ['source','height', 'lazyload'],['', 'auto', true]) }) const contentSize = computed(() => { @@ -26,7 +26,7 @@