Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Widget Eventlist formatieren

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Widget Eventlist formatieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators last edited by Homoran

      Hallo zusammen.

      Wie bereits hier beschrieben, spiele ich ein wenig mit Blockly um mich etwas tiefer in JavaScript einzuarbeiten.

      Dabei schreibe ich in einen Datenpunkt und visualisiere die History über das Widget Eventlist.
      Das einfache Format war mir etwas zu öde und ich habe angefangen es etwas zu pimpen.
      Screenshot_20190831-113001_ioBrokervis.jpg

      Klappt schon ganz gut mit <br><strong> und <h3>, aber ich bekomme keine Farbe rein.

      Außerdem hätte ich gerne fixe Wertelängen, zumindest fixe Nachkommastellen.
      Habe es schon mit "runden auf...mit Nachkommastellen 1" versucht, klappt nicht. Führende Nullen wären noch nice to have, muss aber nicht sein.

      Und ein Bug(???) ist mir noch aufgefallen: die aktuelle Meldung wird erst nach einem refresh dargestellt. Dabei ist das die wichtigste.

      Bin für jede Hilfe dankbar.

      paul53 1 Reply Last reply Reply Quote 0
      • Jey Cee
        Jey Cee Developer last edited by

        Hallo Rainer,

        Bin mir nicht ganz sicher ob es das ist was du suchst:
        Du kannst die Felder mit CSS Stil im Widget Eventlist benutzen um das aussehen an zu passen. Bei Farben kannst du entweder mit Namen (red, blue, usw.) oder mit html Farbcodes arbeiten.

        Beispiel:

        color: red;
        

        oder

        color: #9A2EFE;
        

        Es können auch mehrere CSS Eigenschaften verwendet werden:

        text-align: center; color: red;
        

        @Homoran sagte in Widget Eventlist formatieren:

        Klappt schon ganz gut mit <br><strong> und <h3>, aber ich bekomme keine Farbe rein.

        Wenn ich das richtig verstehe kannst du html in deinen Text einbauen, dadurch könntest du mit hilfe von CSS noch deutlich geziehlter arbeiten. Du kannst die CSS Klasse im VIS Editor rechts oben bei CSS einfügen.

        Beispiel Text:

        Das ist ein <span id="test">Test</span> Text.
        

        dazu die CSS Klasse:

        #test {
            color: red;
            font-size: 14px;
        }
        

        @Homoran sagte in Widget Eventlist formatieren:

        Außerdem hätte ich gerne fixe Wertelängen, zumindest fixe Nachkommastellen.
        Habe es schon mit "runden auf...mit Nachkommastellen 1" versucht, klappt nicht. Führende Nullen wären noch nice to have, muss aber nicht sein.

        Dazu eine Frage, wird das nur im Widget nicht angezeigt oder auch im Ausgangsobjekt?

        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Homoran last edited by paul53

          @Homoran sagte:

          Außerdem hätte ich gerne fixe Wertelängen, zumindest fixe Nachkommastellen.

          Für fixe Nachkommastellen (inkl. 1.0) in einem String gibt es in Javascript

          val.toFixed(n) // n Nachkommastellen
          

          In Blockly wird man wohl eine eigene Javascript-Funktion Nachkomma(val, n) erstellen müssen.

          return val.toFixed(n);
          
          1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators last edited by Homoran

            Danke euch beiden.
            War heute mit der Familie unterwegs.

            @Jey-Cee
            Mit css habe ich noch nie gearbeitet.
            Wo wird die klasse definiert?

            Ich möchte einzelne Worte im Text (ok) oder ganze Meldungen (Pumpe an, Pumpe aus) und natürlich ALARM! in Farben darstellen.

            Mit HTML code habe ich etwas mehr übung, aber <color: red> hatte nicht funktioniert.

            Ob im datenpunkt die Nachkommastellen x.0 steht muss ich mal suchen

            Edit:
            Nein, auch dort keine Nachkommastelle
            Screenshot_20190831-193857_Chrome.jpg

            @paul53
            Die Funktion werde ich auch mal versuchen umzusetzen.

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Homoran last edited by paul53

              @Homoran sagte:

              Die Funktion werde ich auch mal versuchen umzusetzen.

              Du kannst sie gleich noch um eine führende 0 ergänzen.

              if(val < 10 && val >= 0) return '0' + val.toFixed(n);
              return val.toFixed(n);
              
              1 Reply Last reply Reply Quote 0
              • Jey Cee
                Jey Cee Developer last edited by

                @Homoran sagte in Widget Eventlist formatieren:

                Wo wird die klasse definiert?

                590e75aa-71bb-417b-af3c-aa9cde978f32-image.png

                Hier mal Beispiele:
                HTML

                <span id="pumpe-an">Pumpe an!</span>
                <span id="pumpe-aus">Pumpe aus!</span>
                <span id="ALARM!">ALARM!</span> Die Bude brennt.
                

                CSS

                #pumpe-an{
                    font-size: 18px;
                    font-weight: bold;
                    color: green;
                }
                
                #pumpe-aus {
                    font-size: 16px;
                    font-weight: normal;
                    color: orange;
                }
                
                #alarm {
                    font-size: 24px;
                    font-weight: bolder;
                    color: red;
                    
                    /*Animation lässt den Text Blinken*/
                    animation: blink-animation 1s steps(10, start) infinite;
                  -webkit-animation: blink-animation 1s steps(5, start) infinite;
                }
                
                /*Nötig für die Animation*/
                @keyframes blink-animation {
                  to {
                    visibility: hidden;
                  }
                }
                
                @-webkit-keyframes blink-animation {
                  to {
                    visibility: hidden;
                  }
                }
                

                Das sieht dann so aus:
                Peek 2019-08-31 20-48.gif

                1 Reply Last reply Reply Quote 1
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                513
                Online

                32.0k
                Users

                80.5k
                Topics

                1.3m
                Posts

                vis
                3
                6
                701
                Loading More Posts
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes
                Reply
                • Reply as topic
                Log in to reply
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                The ioBroker Community 2014-2023
                logo