Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. VIS1 - per css widget dialog beenden

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

VIS1 - per css widget dialog beenden

Geplant Angeheftet Gesperrt Verschoben Visualisierung
16 Beiträge 3 Kommentatoren 938 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • OliverIOO OliverIO

    @bahnuhr

    Bei der genauen Erklärung habe ich es nun verstanden.
    Bei vis1 ist jquery enthalten.
    über einen CSS Selector und query könnte man einen trigger auf das öffnen legen und dann nach einer gewissen Zeit per JavaScript den schließen Knopf drücken
    Allerdings habe ich zwar den METRO Adapter gefunden aber darin nicht das Widget das du oben benannt hast

    Kannst du da mal den GitHub link posten?

    bahnuhrB Online
    bahnuhrB Online
    bahnuhr
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #7

    @oliverio sagte in VIS1 - per css widget dialog beenden:

    Allerdings habe ich zwar den METRO Adapter gefunden aber darin nicht das Widget das du oben benannt hast

    tschuldigung

    oben stand:
    metro-the dialog / iframe

    richtig ist:
    metro - iframe Tile Dialog / iframe


    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
    Danke.
    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
    ScreenToGif :https://www.screentogif.com/downloads.html

    OliverIOO 1 Antwort Letzte Antwort
    0
    • bahnuhrB bahnuhr

      @oliverio sagte in VIS1 - per css widget dialog beenden:

      Allerdings habe ich zwar den METRO Adapter gefunden aber darin nicht das Widget das du oben benannt hast

      tschuldigung

      oben stand:
      metro-the dialog / iframe

      richtig ist:
      metro - iframe Tile Dialog / iframe

      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von OliverIO
      #8

      @bahnuhr

      hier kannst du mal probieren.
      setTimeout in Zeile 1 wartet 2 Sekunden um sicherzustellen, das das widget von vis auch schon erzeugt worden ist. wenn du viele widgets hast, musst du die zeit in zeile 8 vergrößern 2000 entspricht 2 sekunden
      in zeile 3 wird nach widgets gesucht, die zur css klasse "metro-autoclose" gehören und reagiert dann auf click touchstart ereignis.
      metro-autoclose musst du auch im widget im feld General/Common Class eintragen
      dd3bb160-d0b4-4cf1-b116-d3cbf0f52952-image.png
      zeile 4 setzt dann wieder einen timeout um dann in zeile 5 die funktion zum schließen des dialogs auszuführen.
      die zeit kannst du in zeile 2 mit der variable time einstellen. ich habe die mal hier mit 1000ms = 1 Sekunde sehr kurz eingestellt zum testen

      setTimeout(()=>{
          let time = 1000;
          $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
              setTimeout(()=>{
                  $.metroDialog.close();
              },time);
          });
      },2000);
      

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      bahnuhrB 2 Antworten Letzte Antwort
      1
      • OliverIOO OliverIO

        @bahnuhr

        hier kannst du mal probieren.
        setTimeout in Zeile 1 wartet 2 Sekunden um sicherzustellen, das das widget von vis auch schon erzeugt worden ist. wenn du viele widgets hast, musst du die zeit in zeile 8 vergrößern 2000 entspricht 2 sekunden
        in zeile 3 wird nach widgets gesucht, die zur css klasse "metro-autoclose" gehören und reagiert dann auf click touchstart ereignis.
        metro-autoclose musst du auch im widget im feld General/Common Class eintragen
        dd3bb160-d0b4-4cf1-b116-d3cbf0f52952-image.png
        zeile 4 setzt dann wieder einen timeout um dann in zeile 5 die funktion zum schließen des dialogs auszuführen.
        die zeit kannst du in zeile 2 mit der variable time einstellen. ich habe die mal hier mit 1000ms = 1 Sekunde sehr kurz eingestellt zum testen

        setTimeout(()=>{
            let time = 1000;
            $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                setTimeout(()=>{
                    $.metroDialog.close();
                },time);
            });
        },2000);
        
        bahnuhrB Online
        bahnuhrB Online
        bahnuhr
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #9

        @oliverio
        Super, vielen Dank.
        Funktioniert perfekt.

        Klasse.

        mfg
        Dieter


        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
        Danke.
        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
        ScreenToGif :https://www.screentogif.com/downloads.html

        1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @bahnuhr

          hier kannst du mal probieren.
          setTimeout in Zeile 1 wartet 2 Sekunden um sicherzustellen, das das widget von vis auch schon erzeugt worden ist. wenn du viele widgets hast, musst du die zeit in zeile 8 vergrößern 2000 entspricht 2 sekunden
          in zeile 3 wird nach widgets gesucht, die zur css klasse "metro-autoclose" gehören und reagiert dann auf click touchstart ereignis.
          metro-autoclose musst du auch im widget im feld General/Common Class eintragen
          dd3bb160-d0b4-4cf1-b116-d3cbf0f52952-image.png
          zeile 4 setzt dann wieder einen timeout um dann in zeile 5 die funktion zum schließen des dialogs auszuführen.
          die zeit kannst du in zeile 2 mit der variable time einstellen. ich habe die mal hier mit 1000ms = 1 Sekunde sehr kurz eingestellt zum testen

          setTimeout(()=>{
              let time = 1000;
              $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                  setTimeout(()=>{
                      $.metroDialog.close();
                  },time);
              });
          },2000);
          
          bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #10

          @oliverio
          Noch ne Frage, wenn ich darf.

          Kann man in dem Editor Skript auch ein Bindung auf einen DP verarbeiten ?

          Dies z.B. funktioniert nicht:
          let time = {javascript.0.System.Sonstige.VIS_Video_close}

          Die Klammern stören.


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
          ScreenToGif :https://www.screentogif.com/downloads.html

          OliverIOO 1 Antwort Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @oliverio
            Noch ne Frage, wenn ich darf.

            Kann man in dem Editor Skript auch ein Bindung auf einen DP verarbeiten ?

            Dies z.B. funktioniert nicht:
            let time = {javascript.0.System.Sonstige.VIS_Video_close}

            Die Klammern stören.

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von
            #11

            @bahnuhr
            ja das geht mit kleinen umwegen
            als erstes musst du dafür sorgen das der datenpunkt in vis abonniert ist.
            also am besten einfach ein number widget nehmen und dort die id eintragen

            wenn du das widget verstecken wills (kann auch hintern einem anderen widget liegen), kannst du das mit css machen

            hier die widget id eintragen

            #w00000 {
                  visibility:hidden;
              }
              
            

            oder zur wiederverwendung einen eigenen klassennamen nehmen
            und den dann bei general/css class eintragen (dort dann ohne punkt)

            .versteckt {
                  visibility:hidden;
              }
            

            im skipt kannst du dann

            let time = {javascript.0.System.Sonstige.VIS_Video_close}

            mit

            let time = vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"]
            

            ersetzen

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            bahnuhrB 1 Antwort Letzte Antwort
            0
            • OliverIOO OliverIO

              @bahnuhr
              ja das geht mit kleinen umwegen
              als erstes musst du dafür sorgen das der datenpunkt in vis abonniert ist.
              also am besten einfach ein number widget nehmen und dort die id eintragen

              wenn du das widget verstecken wills (kann auch hintern einem anderen widget liegen), kannst du das mit css machen

              hier die widget id eintragen

              #w00000 {
                    visibility:hidden;
                }
                
              

              oder zur wiederverwendung einen eigenen klassennamen nehmen
              und den dann bei general/css class eintragen (dort dann ohne punkt)

              .versteckt {
                    visibility:hidden;
                }
              

              im skipt kannst du dann

              let time = {javascript.0.System.Sonstige.VIS_Video_close}

              mit

              let time = vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"]
              

              ersetzen

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von bahnuhr
              #12

              @oliverio
              So Rückinfo von mir.
              Klappt fast.

              habe in VIS mir einen Slider eingebaut, der den num DP entsprechend ändert.

              Das Skript sieht nun so aus:

              setTimeout(()=>{
                  //let time = 10000;
                  let time = vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"];
                  $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                      setTimeout(()=>{
                          $.metroDialog.close();
                      },time);
                  });
              },3000);
              

              Habe eben den DP auf 4000 geändert.
              Dann VIS neu geladen und der dialog wurde nach 4 sek. geschlossen.
              Dann den Slider geändert auf 8000.
              Dialog geöffnet, aber wieder geschlossen nach 4 Sek.

              Kann es sein, dass der Wert nur geändert / aktualisiert wird, wenn die VIS neu geladen wird.


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              OliverIOO 1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @oliverio
                So Rückinfo von mir.
                Klappt fast.

                habe in VIS mir einen Slider eingebaut, der den num DP entsprechend ändert.

                Das Skript sieht nun so aus:

                setTimeout(()=>{
                    //let time = 10000;
                    let time = vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"];
                    $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                        setTimeout(()=>{
                            $.metroDialog.close();
                        },time);
                    });
                },3000);
                

                Habe eben den DP auf 4000 geändert.
                Dann VIS neu geladen und der dialog wurde nach 4 sek. geschlossen.
                Dann den Slider geändert auf 8000.
                Dialog geöffnet, aber wieder geschlossen nach 4 Sek.

                Kann es sein, dass der Wert nur geändert / aktualisiert wird, wenn die VIS neu geladen wird.

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von
                #13

                @bahnuhr sagte in VIS1 - per css widget dialog beenden:

                vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"];

                das let time muss in eine andere zeile verschoben werden.
                ich hab es oben platziert das du es einfacher findest.
                damit ist der wert aber nur einmal bei start von vis gelesen worden.
                durch das verschieben wird es nun kurz nach dem klick neu gelesen.
                dann müsste es funktionieren

                setTimeout(()=>{
                    $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                        let time = vis.states["0_userdata.0.testFolder.b2.val"];
                        setTimeout(()=>{
                            $.metroDialog.close();
                        },time);
                    });
                },2000);
                

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                bahnuhrB 3 Antworten Letzte Antwort
                1
                • OliverIOO OliverIO

                  @bahnuhr sagte in VIS1 - per css widget dialog beenden:

                  vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"];

                  das let time muss in eine andere zeile verschoben werden.
                  ich hab es oben platziert das du es einfacher findest.
                  damit ist der wert aber nur einmal bei start von vis gelesen worden.
                  durch das verschieben wird es nun kurz nach dem klick neu gelesen.
                  dann müsste es funktionieren

                  setTimeout(()=>{
                      $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                          let time = vis.states["0_userdata.0.testFolder.b2.val"];
                          setTimeout(()=>{
                              $.metroDialog.close();
                          },time);
                      });
                  },2000);
                  
                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #14

                  @oliverio
                  Rückinfo,
                  klappt nun alles wie gewünscht.

                  Vielen lieben Dank und einen schönen Abend.


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • OliverIOO OliverIO

                    @bahnuhr sagte in VIS1 - per css widget dialog beenden:

                    vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"];

                    das let time muss in eine andere zeile verschoben werden.
                    ich hab es oben platziert das du es einfacher findest.
                    damit ist der wert aber nur einmal bei start von vis gelesen worden.
                    durch das verschieben wird es nun kurz nach dem klick neu gelesen.
                    dann müsste es funktionieren

                    setTimeout(()=>{
                        $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                            let time = vis.states["0_userdata.0.testFolder.b2.val"];
                            setTimeout(()=>{
                                $.metroDialog.close();
                            },time);
                        });
                    },2000);
                    
                    bahnuhrB Online
                    bahnuhrB Online
                    bahnuhr
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #15

                    @oliverio
                    Nochmal Rückinfo.

                    Es funktioniert doch nicht zuverlässig.
                    Rufe ich iob neu auf; dann kommt die default seite.
                    Wechsel zur Video view -> schließen funktioniert nicht.
                    Erst reload der video view -> dann klappt es.

                    Nun habe ich mehrere iob im Haus verteilt.
                    Wenn es bei dem einen tablet dann geht, gehen die anderen nicht.

                    Folglich: Es ist eine Möglichkeit, die aber (zumindest für mich) nicht zuverlässig funktioniert.

                    Hast du eine Idee was da falsch läuft.

                    mfg
                    Dieter


                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                    Danke.
                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                    ScreenToGif :https://www.screentogif.com/downloads.html

                    1 Antwort Letzte Antwort
                    0
                    • OliverIOO OliverIO

                      @bahnuhr sagte in VIS1 - per css widget dialog beenden:

                      vis.states["javascript.0.System.Sonstige.VIS_Video_close.val"];

                      das let time muss in eine andere zeile verschoben werden.
                      ich hab es oben platziert das du es einfacher findest.
                      damit ist der wert aber nur einmal bei start von vis gelesen worden.
                      durch das verschieben wird es nun kurz nach dem klick neu gelesen.
                      dann müsste es funktionieren

                      setTimeout(()=>{
                          $(".metro-autoclose .vis-widget-body").on('click touchstart', function () {
                              let time = vis.states["0_userdata.0.testFolder.b2.val"];
                              setTimeout(()=>{
                                  $.metroDialog.close();
                              },time);
                          });
                      },2000);
                      
                      bahnuhrB Online
                      bahnuhrB Online
                      bahnuhr
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #16

                      @oliverio
                      Das mit dem editor Skript hat nicht zuverlässig funktioniert.

                      Habs jetzt wie folgt gelöst:
                      Per Klick wird DP auf true gesetzt und dann per Sichtbarkeit das widget eingeblendet.
                      Klappt.


                      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                      Danke.
                      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                      ScreenToGif :https://www.screentogif.com/downloads.html

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      590

                      Online

                      32.7k

                      Benutzer

                      82.3k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe