FTUI und jQuery; möglich oder mein Unverständnis (addon swiper) ?

Begonnen von FHEm2005, 04 Mai 2016, 20:17:03

Vorheriges Thema - Nächstes Thema

FHEm2005

Das  ist ja mal wirklich trickreich!! Aber es funktioniert. Klasse! + Danke für die Hilfe.

Zusatzfrage: Ich habe über data-hash nichts gefunden. Ist das ein Sprung-label?
Raspi3: FHEM, CULV3 (V1.61), EnOcean Pi 868, nanoCUL433, HUE-Bridge; Raspi4: Node-red, MQTT, Gaszähler auslesen mit ESP32-CAM, BSB-LAN

viegener

Zitat von: FHEm2005 am 07 Mai 2016, 11:15:42
Das  ist ja mal wirklich trickreich!! Aber es funktioniert. Klasse! + Danke für die Hilfe.

Zusatzfrage: Ich habe über data-hash nichts gefunden. Ist das ein Sprung-label?

Das mit den data-hashes ist ein Überbleibsel von Tests, die ich mit Java-script gemacht hatte, dabei wird bei einer Änderung der aktuellen Adresse (nach dem #) ein andere Swiper-Seite ausgewählt. Das kollidiert aber wohl mit den pagetabs, deshalb habe ich diesen Weg aufgegegeben.

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Achso: um die data-hashes zu verwenden muss noch die class "hashnav" eingestellt sein. Ich habe das auch nur im Souce (und dann in einem Beispiel für den swiper) gefunden.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

FHEm2005

ichhabe nirgendwo die Klasse "hashnav" das Attribut kann ich demnach löschen?
Raspi3: FHEM, CULV3 (V1.61), EnOcean Pi 868, nanoCUL433, HUE-Bridge; Raspi4: Node-red, MQTT, Gaszähler auslesen mit ESP32-CAM, BSB-LAN

viegener

Ja, im Sourcecode wird nur über die Reihenfolge in data-states der richtige Inhalt angesteuert
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

FHEm2005

Jetzt habe ich ein "gerüttelt Maß" an FTUI gelernt. Danke für die Extra-Stunde!
Raspi3: FHEM, CULV3 (V1.61), EnOcean Pi 868, nanoCUL433, HUE-Bridge; Raspi4: Node-red, MQTT, Gaszähler auslesen mit ESP32-CAM, BSB-LAN

viegener

Kein Problem! setstates-Hinweis hat bei mir ja auch erst den Anstoss gegeben...

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

FHEm2005

Ich habe jetzt meine(n) Player integriert - einfach Top. Die Fehlerliste ist abgearbeitet und alles funktioniert - alles? Nein ein kleiner Fehler ist noch da und kämpft um sein Daseion  :D. Genau! Das PopUp:
Zitat von: setstate am 06 Mai 2016, 18:38:50
Dafür wartet schon ein Patch als pull Request im Github, glaube ich.  Ich schaue gleich mal nach ...

Gibt es da was Neues? Ich habe keine Ahnung was ein Pull Request ist.
Gruß Eberhard
Raspi3: FHEM, CULV3 (V1.61), EnOcean Pi 868, nanoCUL433, HUE-Bridge; Raspi4: Node-red, MQTT, Gaszähler auslesen mit ESP32-CAM, BSB-LAN

fhainz

Mein Pull Request betraf das fehlende X (zum schließen)  wenn ein swiper in einem Popup definiert ist.

viegener

Zitat von: FHEm2005 am 07 Mai 2016, 14:52:45
Gibt es da was Neues? Ich habe keine Ahnung was ein Pull Request ist.
Gruß Eberhard

Ein pull-request ist die Änderung von jemand anders am sourcecode, der sie dem Entwickler zur Übernahme in github bereitstellt. Also quasi ein patch den jemand gemacht hat und der darauf wartet, vom Entwickler in den "offiziellen" Teil übernommen zu werden.

Das hätt google aber vermutlich besser als ich erklären können  ;)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

setstate

#25
Es war aber augenscheinlich ein Patch für ein anderes Problem.
Wie kann ich das bei mir nachstellen? Leere Seite, ein Swiper und auf eine beliebige Sektion ein Popup setzen? Das Öffnen des Popup klappt dann nicht? Es verbleibt im Hintergrund?

1. Erkenntnis:
Das Popup "lebt" nur innerhalb der Swiper Container, hat aber einen Left und Top Abstand für die Mitte der Seite. Deshalb ist es nicht im sichtbaren Bereich.

2. Lösungsansatz:
Man müsste das Dialog-Element an seiner Position ablösen und neu an BODY anfügen, damit es mittig der Seite aufpoppen kann. Auf den ersten Blick ist das die Lösung, funktioniert auch auf meiner reparierten Testseite. Vielleicht sollte man noch die Option haben, wo es erscheinen soll. Es wäre bestimmt auch manchmal gewünscht, ein Popup ganz oben oder ganz unten erscheinen zu lassen.

Zum Nachtesten: im widget_popup.js das nach Zeile 91 einfügen
           
91 if (dialog && close && starter){
92                dialog.detach();
93                $('body').append(dialog);

FHEm2005

Hier der Code:

    <header>SB-Player</header>
<div class="cell inline">
          <div data-type="label" class="inline wider"></div>
          <div data-type="select" data-device="ftuiSelectSB"
                    data-alias='["Küche","Bad","Wohnen","Büro","iPhone-Eberhard"]'
                    data-items='["sb_Ku","sb_Bad","sb_Wz","sb_Bu","sb_iPE"]'
                    data-get="copyState" data-set="" class="w3x" ></div>
     
    </div>


    <div data-type="swiper" data-height="350px" data-width="536px" data-get="copyState" data-device="ftuiSelectSB"
         data-states='["sb_Ku","sb_Bad","sb_Wz","sb_Bu","sb_iPE"]'  >
      <ul>
            <li>
            <div style= "width: 482px;
height: 275px;
border: 1px solid;
position:absolute;
top:31px;
left:26px;
margin: 0px;
background-image: url('images/squeezebox/wallpaper/fab4_allegro.png');" >

<!-- Coverart -->
<div  data-type="popup"
data-height="500px" 
data-width="500px"
style="position:absolute;
top: 47px !important;
left: 0px !important;"> -->
<div class="left "
data-type="image"
style = "margin: 0px 10px 0px 5px;
position:absolute;
top:48px;
left:2px;
cursor:pointer;
background-color:none;"
data-device="SB3.Buero"
data-get="coverarturl"
data-size="100%"
data-height="182px"
data-width="182px"
data-opacity = "1" >
</div>
<div class="dialog" style="border: 1px solid;">
<div data-type="image" style = "margin: 0px;
background-color:none;"
data-device="SB3.Buero"
data-get="coverarturl"
data-size="100%"
data-height="495px"
data-width="498px"
data-opacity = "1"
class="left" >
</div>
</div>
</div> 
        </div>
</li>
</ul>
</div>


Dies ist ein Auszug aus meinem Code zum Nachstellen.
Gruß Eberhard
Raspi3: FHEM, CULV3 (V1.61), EnOcean Pi 868, nanoCUL433, HUE-Bridge; Raspi4: Node-red, MQTT, Gaszähler auslesen mit ESP32-CAM, BSB-LAN

setstate

Ich habe die Änderung jetzt so eingecheckt. Das Popup bleibt jetzt auch auf einem Swiper positioniert sichtbar.

Optional kann man die Bildschirmposition mit data-left und data-top in px oder % festlegen. Ansonsten ist es mittig angeordnet.

FHEm2005

ZitatIch habe die Änderung jetzt so eingecheckt.
Tut mir leid zu fragen: wo find ich die Änderung? Im widget_swiper.js vermutlich und der ist mit einem update aktualisierbar?

Danke für das Einarbeiten.
Gruß Eberhard
Raspi3: FHEM, CULV3 (V1.61), EnOcean Pi 868, nanoCUL433, HUE-Bridge; Raspi4: Node-red, MQTT, Gaszähler auslesen mit ESP32-CAM, BSB-LAN

setstate

Sorry, ich wollte es noch vermerken :-(

Siehe meine Signatur, der erste Update Befehl. Einfach in die Fhem Web  commandline eingeben und enger drücken.