FTUI Widget Pagebutton: Unterschied zwischen den Versionen

Aus FHEMWiki
(Die Seite wurde neu angelegt: „{{Todo|Seite ausbauen. Habe nur den Link zum Forum untergebracht, damit ich's nicht vergesse}} ==Weblinks== *{{Link2Forum|Topic=67141|LinkText=Fertiges Pagebut…“)
 
KKeine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
{{Todo|Seite ausbauen. Habe nur den Link zum Forum untergebracht, damit ich's nicht vergesse}}
Das [[{{PAGENAME}}|Pagebutton Widget]] ist ein Widget für [[FHEM Tablet UI]], das ein einfaches Element zur Verfügung stellt, um auf eine andere Seite zu navigieren. Auf der Zielseite wird das Widget als "ON" angezeigt. Das Pagebutton-Widget eignet sich zum Beispiel gut, um eine Navigation zu erstellen.
 
<gallery>
File:FTUI_Widget_Pagebutton_01.png
File:FTUI_Widget_Pagebutton_02.png
</gallery>
 
==Attribute==
Für das Pagebutton-Widget gelten alle Attribute des [[FTUI Widget Switch]]. Und zusätzlich die folgenden:
{|class="wikitable"
!Attribut
!Beschreibung
!Standard-Wert
!Beispiel
|-
|'''data-url'''||URL der Seite, die angezeigt werden soll||||data-url="#content_main.html"
|-
|'''data-load'''||DIV-Container, in den der Inhalt der Zielseite geladen werden soll||||data-load="#main"
|-
|'''data-active-pattern'''||[[Regulärer Ausdruck|RegEx]], die bestimmt, wann das Widget "ON" sein soll||||<nowiki>data-active-pattern="(.*/||.*#content_main.html)"</nowiki>
|-
|'''data-fade-duration'''||Zeit in Millisekunden oder "slow" bzw. "fast", die verwendet werden soll, um die Zielseite einzublenden||slow||data-fade-duration="1000"
|-
|'''data-icon'''||Vordergrund-Icon des Widgets||fa-power-off||data-icon="mi-home"
|-
|'''data-background-icon'''||Hintergrund-Icon des Widgets||fa-circle||data-background-icon="fa-square"
|-
|'''data-on-color'''||Farbe des Vordergrund-Icons, wenn der gewünschte Inhalt angezeigt wird||#222222||data-on-color="yellow"
|-
|'''data-on-background-color'''||Farbe des Hintergrund-Icons, wenn der gewünschte Inhalt angezeigt wird||#606060||data-on-background-color="gray"
|-
|'''data-off-color'''||Farbe des Vordergrund-Icons, wenn der gewünschte Inhalt nicht angezeigt wird||#505050||data-off-color="#000000"
|-
|'''data-off-background-color'''||Farbe des Vordergrund-Icons, wenn der gewünschte Inhalt nicht angezeigt wird||transparent||data-off-background-color="#cccccc"
|}
 
==CSS Klassen==
{|class="wikitable"
{{FTUI Klasse|blank}}{{FTUI Klasse|nocache}}{{FTUI Klasse|default}}{{FTUI Klasse|prefetch}}
|}
 
==Beispiele==
===Einfacher Link===
<source lang="html">
<div data-type="pagebutton"
    data-url="index.html"
    data-icon="mi-home"></div>
</source>
[[File:FTUI_Widget_Pagebutton_01.png]]
 
 
===Navigationsleiste===
Für die Navigationsleiste braucht es zum einen die Leiste und zum anderen einen DIV-Container, in dem die zu ladenden Inhalte angezeigt werden. Die Container erhalten jeweils eine eindeutige ID, welche in der Navigationsleiste als Ziel referenziert wird.
 
Als erstes wird das Menü aufgebaut.
<source lang="html">
<li data-row="1" data-col="1" data-sizex="1" data-sizey="4">
    <div data-type="pagebutton"
        data-url="#page1.html"
        data-load="#page1"
        data-active-pattern=".*#page1.html"
        data-icon="mi-weekend"
        class="default"></div>
    <div data-type="pagebutton"
        data-url="#page2.html"
        data-load="#page2"
        data-active-pattern=".*#page2.html"
        data-icon="mi-music_video"></div>
    <div data-type="pagebutton"
        data-url="#page3.html"
        data-load="#page3"
        data-active-pattern=".*#page3.html"
        data-icon="mi-tv"></div>
</li>
</source>
 
Anschließend werden noch die DIV-Container benötigt, in die der Inhalt der Zielseite geladen wird.
<source lang="html">
<li data-row="1" data-col="2" data-sizex="5" data-sizey="4">
    <div class="page" id="page1"></div>
    <div class="page" id="page2"></div>
    <div class="page" id="page3"></div>
</li>
</source>
 
In der Zielseite ist wichtig, dass ein DIV-Container erstellt wird, dem die Klasse ''page'' zugewiesen wird und eine ID, die der ID entsprechen muss, in der bei ''data-load'' verwiesen wird.
So eine Seite könnte wie folgt aussehen:
<source lang="html">
<div class="page" id="page1">
    <div data-type="label">Page 1</div>
</div>
</source>
 
[[File:FTUI_Widget_Pagebutton_02.png]]
 
==Weblinks==
==Weblinks==
*[https://github.com/knowthelist/fhem-tablet-ui/blob/master/examples/pagebutton/index_page_left_demo.html Beispiel für eine Navigation]
*{{Link2Forum|Topic=67141|LinkText=Fertiges Pagebutton Multi-Menü}}
*{{Link2Forum|Topic=67141|LinkText=Fertiges Pagebutton Multi-Menü}}
[[Kategorie:FHEM Tablet UI]]

Version vom 15. Februar 2017, 14:00 Uhr

Das Pagebutton Widget ist ein Widget für FHEM Tablet UI, das ein einfaches Element zur Verfügung stellt, um auf eine andere Seite zu navigieren. Auf der Zielseite wird das Widget als "ON" angezeigt. Das Pagebutton-Widget eignet sich zum Beispiel gut, um eine Navigation zu erstellen.

Attribute

Für das Pagebutton-Widget gelten alle Attribute des FTUI Widget Switch. Und zusätzlich die folgenden:

Attribut Beschreibung Standard-Wert Beispiel
data-url URL der Seite, die angezeigt werden soll data-url="#content_main.html"
data-load DIV-Container, in den der Inhalt der Zielseite geladen werden soll data-load="#main"
data-active-pattern RegEx, die bestimmt, wann das Widget "ON" sein soll data-active-pattern="(.*/||.*#content_main.html)"
data-fade-duration Zeit in Millisekunden oder "slow" bzw. "fast", die verwendet werden soll, um die Zielseite einzublenden slow data-fade-duration="1000"
data-icon Vordergrund-Icon des Widgets fa-power-off data-icon="mi-home"
data-background-icon Hintergrund-Icon des Widgets fa-circle data-background-icon="fa-square"
data-on-color Farbe des Vordergrund-Icons, wenn der gewünschte Inhalt angezeigt wird #222222 data-on-color="yellow"
data-on-background-color Farbe des Hintergrund-Icons, wenn der gewünschte Inhalt angezeigt wird #606060 data-on-background-color="gray"
data-off-color Farbe des Vordergrund-Icons, wenn der gewünschte Inhalt nicht angezeigt wird #505050 data-off-color="#000000"
data-off-background-color Farbe des Vordergrund-Icons, wenn der gewünschte Inhalt nicht angezeigt wird transparent data-off-background-color="#cccccc"

CSS Klassen

blank Öffnet die angegebene URL in einem neuen Fenster
nocache Erzwingt das Neuladen eines Elementes (z.B. Bild, Seite, ...) bei jedem Aufruf statt der Zwischenspeicherung im Browser-Cache
default Seite, die standardmäßig geladen wird bzw. Button, der standardmäßig "EIN" sein soll
prefetch Browser lädt den Inhalt im Hintergrund bevor er angezeigt wird um Ladezeit zu sparen

Beispiele

Einfacher Link

<div data-type="pagebutton"
     data-url="index.html"
     data-icon="mi-home"></div>

FTUI Widget Pagebutton 01.png


Navigationsleiste

Für die Navigationsleiste braucht es zum einen die Leiste und zum anderen einen DIV-Container, in dem die zu ladenden Inhalte angezeigt werden. Die Container erhalten jeweils eine eindeutige ID, welche in der Navigationsleiste als Ziel referenziert wird.

Als erstes wird das Menü aufgebaut.

<li data-row="1" data-col="1" data-sizex="1" data-sizey="4">
    <div data-type="pagebutton"
         data-url="#page1.html"
         data-load="#page1"
         data-active-pattern=".*#page1.html"
         data-icon="mi-weekend"
         class="default"></div>
    <div data-type="pagebutton"
         data-url="#page2.html"
         data-load="#page2"
         data-active-pattern=".*#page2.html"
         data-icon="mi-music_video"></div>
    <div data-type="pagebutton"
         data-url="#page3.html"
         data-load="#page3"
         data-active-pattern=".*#page3.html"
         data-icon="mi-tv"></div>
</li>

Anschließend werden noch die DIV-Container benötigt, in die der Inhalt der Zielseite geladen wird.

<li data-row="1" data-col="2" data-sizex="5" data-sizey="4">
    <div class="page" id="page1"></div>
    <div class="page" id="page2"></div>
    <div class="page" id="page3"></div>
</li>

In der Zielseite ist wichtig, dass ein DIV-Container erstellt wird, dem die Klasse page zugewiesen wird und eine ID, die der ID entsprechen muss, in der bei data-load verwiesen wird. So eine Seite könnte wie folgt aussehen:

<div class="page" id="page1">
    <div data-type="label">Page 1</div>
</div>

FTUI Widget Pagebutton 02.png

Weblinks