Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. jarvis v2.2.0 - just another remarkable vis

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

jarvis v2.2.0 - just another remarkable vis

Scheduled Pinned Locked Moved Tester
jarvismaterialmaterial uimaterialdesignvisvisualisierungvisualization
6.1k Posts 316 Posters 4.3m Views 273 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L lustig29

    @mcu said in jarvis v2.2.0 - just another remarkable vis:

    0168000003e8

    Ok, test hat schon mal funktioniert.

    016403e803e8 Rot
    001303e803e8 Orange
    002b03e803e8 Gelb
    004e03e803e8 Grün
    00db03e803e8 Blau
    010803e803e8 Lila
    012903e803e8 Rosa

    M Online
    M Online
    MCU
    wrote on last edited by
    #5459

    @lustig29 Hast du es mal versucht?

    NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

    1 Reply Last reply
    0
    • M MCU

      @rkccorian Wäre die ID für 'wohnzimmer' nicht 'w00002' ?

      document.getElementByID('w00002').style.backgroundColor ='red';
      
      R Offline
      R Offline
      RkcCorian
      wrote on last edited by
      #5460

      @mcu bzw. w00001. Hab ich auch probiert, jedoch auch kein Effekt 😥

      1 Reply Last reply
      0
      • M MCU

        @rkccorian Wäre die ID für 'wohnzimmer' nicht 'w00002' ?

        document.getElementByID('w00002').style.backgroundColor ='red';
        
        R Offline
        R Offline
        RkcCorian
        wrote on last edited by
        #5461

        @mcu Vermutlich würden die Skripte die Möglichkeit der Skalierung und Positionierung bieten, allerdings hat das was ich da eintrage bislang keinen Effekt. Keine Ahnung wie die ausgeführt werden

        1 Reply Last reply
        0
        • M Online
          M Online
          MCU
          wrote on last edited by MCU
          #5462

          @liv-in-sky Kannst du bitte mal ein funktionierendes Beispiel für die Benutzung der Scripte in VIS ins Forum stellen? Also mit einem Widget (image) und wie man dieses Widget (w00001) dann beeinflussen kann, bzw. wie man darauf reagieren kann, falls die Bildschirmgröße sich ändert? Ich suche sowas gerade für eine responsiv VIS. Vielen Dank. Wenn möglich bitte im jarvis-Thread.
          Habe zufällig den issue mitbekommen: https://github.com/ioBroker/ioBroker.vis/issues/415

          NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
          Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

          liv-in-skyL 1 Reply Last reply
          0
          • M MCU

            @liv-in-sky Kannst du bitte mal ein funktionierendes Beispiel für die Benutzung der Scripte in VIS ins Forum stellen? Also mit einem Widget (image) und wie man dieses Widget (w00001) dann beeinflussen kann, bzw. wie man darauf reagieren kann, falls die Bildschirmgröße sich ändert? Ich suche sowas gerade für eine responsiv VIS. Vielen Dank. Wenn möglich bitte im jarvis-Thread.
            Habe zufällig den issue mitbekommen: https://github.com/ioBroker/ioBroker.vis/issues/415

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            wrote on last edited by
            #5463

            @mcu

            ich kenne jarvis nicht, daher weiß ich nicht, ob du darin jquery nutzen kannst

            hast du an sowas gedacht - beim ändern des browserfensters ändern sich auch die widgets in der visAApossis (144).gif

            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

            R M 2 Replies Last reply
            1
            • liv-in-skyL liv-in-sky

              @mcu

              ich kenne jarvis nicht, daher weiß ich nicht, ob du darin jquery nutzen kannst

              hast du an sowas gedacht - beim ändern des browserfensters ändern sich auch die widgets in der visAApossis (144).gif

              R Offline
              R Offline
              RkcCorian
              wrote on last edited by RkcCorian
              #5464

              @liv-in-sky Es geht um VIS, in JARVIS wird diese als iFrame genutzt.

              Ich habe es bereits geschafft, dass Elemente Responsiv reagieren. Allerdings muss ich mehrere Elemente (Linkflächen) abhängig von einem anderen Element (Bild vom Grundriss) skallieren. Ansonsten werden die Linkflächen immer an eine falsche Stelle / Größe geschoben.

              Vgl. auch meinen Post von oben und Folgende...

              @rkccorian sagte in jarvis v2.2.0 - just another remarkable vis:

              Update bzgl. Responsiver VIS zur schnellen Navigation in JARVIS...

              Ich habe es geschafft, den Hintergrund Responsiv zu berechnen. Darüber habe ich ein Link-Objekt gelegt, mit welchem ich direkt auf einen bestimmten Tab in JARVIS springen kann. Soweit so gut. Allerdings...

              In der VIS (falls jemand einen besseren Ort für meine Frage kennt gerne um Rückmeldung):
              Den Wohnzimmerbereich muss ich in Größe und Position in Abhängigkeit des Grundrisses anpassen. Das kriege ich bislang nicht hin. Würde CSS oder Skripte in VIS probieren. Allerdings komme ich mit CSS nicht auf die Eigenschaften des Grundriss und meine Versuche mit den Skripten werden nicht ausgeführt.

              Kann mir jemand helfen?! Vielen Dank im Voraus!!!

              Meine bescheidenen Versuche...
              d96910bb-04ed-43f9-b0eb-854d9be0e6f4-image.png

              07adcf91-93d9-4d4a-9d64-61268bca2b05-image.png
              07c32d32-90bf-4ea0-8e70-091f83638816-image.png

              1 Reply Last reply
              0
              • liv-in-skyL liv-in-sky

                @mcu

                ich kenne jarvis nicht, daher weiß ich nicht, ob du darin jquery nutzen kannst

                hast du an sowas gedacht - beim ändern des browserfensters ändern sich auch die widgets in der visAApossis (144).gif

                M Online
                M Online
                MCU
                wrote on last edited by MCU
                #5465

                @liv-in-sky
                Wie @RkcCorian schon geschrieben hat.
                Es geht um einen Grundrissplan von einer Etage. Auf diesem sind mehrere Elemente fest hinterlegt, so daß man auf den Elementen Schaltvorgänge auslösen kann.
                Dieser Grundrissplan wird jetzt als iFrame in jarvis eingebunden. Da man jarvis nun nicht nur am PC, sondern auch auf dem Tablet usw hat, soll sich mit das iframe auch die Größe des Grundrissplans anpassen, so dass dieser immer zu 100% zu sehen ist in dem dargestellten Bereich.
                So müssen entsprechend die Schaltfelder auch kleiner werden, falls der Grundrissplan kleiner wird.
                Dies darf aber auch nur bis zu einer festgelegten Größe geschehen, da evtl die Schalterflächen (-elemente) sonst zu klein werden würden und man könnte dann keinen Schaltvorgang mehr auslösen.
                In erster Linie ging es aber auch erstmal darum, wie kann ich die Elemente in VIS steuern bzw beeinflussen mit den Scripten in "SCRIPTE" (VIS).
                Vielen Dank.

                NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                liv-in-skyL 1 Reply Last reply
                0
                • M MCU

                  @liv-in-sky
                  Wie @RkcCorian schon geschrieben hat.
                  Es geht um einen Grundrissplan von einer Etage. Auf diesem sind mehrere Elemente fest hinterlegt, so daß man auf den Elementen Schaltvorgänge auslösen kann.
                  Dieser Grundrissplan wird jetzt als iFrame in jarvis eingebunden. Da man jarvis nun nicht nur am PC, sondern auch auf dem Tablet usw hat, soll sich mit das iframe auch die Größe des Grundrissplans anpassen, so dass dieser immer zu 100% zu sehen ist in dem dargestellten Bereich.
                  So müssen entsprechend die Schaltfelder auch kleiner werden, falls der Grundrissplan kleiner wird.
                  Dies darf aber auch nur bis zu einer festgelegten Größe geschehen, da evtl die Schalterflächen (-elemente) sonst zu klein werden würden und man könnte dann keinen Schaltvorgang mehr auslösen.
                  In erster Linie ging es aber auch erstmal darum, wie kann ich die Elemente in VIS steuern bzw beeinflussen mit den Scripten in "SCRIPTE" (VIS).
                  Vielen Dank.

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  wrote on last edited by
                  #5466

                  @mcu das macht mein beispiel - das problem könnte eher das iframe sein - das weiß ich nicht so genau :-(

                  das iframe müßte ja dynamisch sein - das heißt wenn du deine seite verkleinerst, muss auch das fenster des iframes kleiner werden - und ob dann die vis-seite darauf reagiert - keine ahnung) und auch weiß, das auf deiner jarvis seite gerade das fenster kleiner wurde ???

                  leider kann ich das nicht testen , will jarvis nicht installieren

                  also das kommt wohl von @RkcCorian

                  in der vis sieht mein beispiel von oben so aus: steht im script tab der vis
                  der obere teil ist eine grund-funtion - die ist nur dazu da, auf das erstellen der widgets zu warten - sonst funktioniert das nicht
                  im unteren teil werden die widgets angesprochen

                  
                      function waitForElement(parent, elementPath, wid, widgetName, callBack, counter = 0, debug = false) {
                          if (counter < 10000) {
                  
                              setTimeout(function () {
                                  if (parent.find(elementPath).length > 0) {
                                      if (debug) console.log(`[${widgetName} ${wid}] it took ${counter}ms to wait for the element '${elementPath}'`);
                                      callBack();
                                  } else {
                                      if (debug) console.log(`[${widgetName} ${wid}] wait for element '${elementPath}'`);
                                      counter++
                                      waitForElement(parent, elementPath, wid, widgetName, callBack, counter, debug);
                                  }
                              }, 1);
                          } else {
                              console.warn(`[${widgetName} ${wid}] stop waiting after ${counter} retries`);
                              callBack();
                          }
                      }
                  
                  
                  
                  
                  
                  waitForElement($('body'),'.seiteResizen', 'dummy', 'dummy', function () {
                          // Widget ist vollständig geladen, wir können irgendwas damit machen
                               //Event to handle resizing
                          $(window).resize(function () 
                          {  
                              height = $(window).height(); 
                              width = $(window).width();
                              console.log(width)
                              console.log("Resized"+width);
                               $(".seiteResizen").text("Resized  Weite: "+width+"  und Höhe: "+height);
                             
                              $("#w00006").css({"width": width/6,"height": height/6});
                              if (width>810) {
                                  $("#w00006").css( {"background-color": "rgb(72 143 89)","font-size": "x-large"});
                                   $("#w00006").text("IN GROSS GEÄNDERT");
                                
                              }  else 
                                  {$("#w00006").css( {"background-color": "rgb(209, 202, 153)","font-size": "xx-small"});
                                  $("#w00006").text("IN KLEIN GEÄNDERT");     
                                  } 
                          });
                  
                         
                      }, 0, true);
                  

                  weiß nicht, ob euch das weiterhilft

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  M R 3 Replies Last reply
                  0
                  • liv-in-skyL liv-in-sky

                    @mcu das macht mein beispiel - das problem könnte eher das iframe sein - das weiß ich nicht so genau :-(

                    das iframe müßte ja dynamisch sein - das heißt wenn du deine seite verkleinerst, muss auch das fenster des iframes kleiner werden - und ob dann die vis-seite darauf reagiert - keine ahnung) und auch weiß, das auf deiner jarvis seite gerade das fenster kleiner wurde ???

                    leider kann ich das nicht testen , will jarvis nicht installieren

                    also das kommt wohl von @RkcCorian

                    in der vis sieht mein beispiel von oben so aus: steht im script tab der vis
                    der obere teil ist eine grund-funtion - die ist nur dazu da, auf das erstellen der widgets zu warten - sonst funktioniert das nicht
                    im unteren teil werden die widgets angesprochen

                    
                        function waitForElement(parent, elementPath, wid, widgetName, callBack, counter = 0, debug = false) {
                            if (counter < 10000) {
                    
                                setTimeout(function () {
                                    if (parent.find(elementPath).length > 0) {
                                        if (debug) console.log(`[${widgetName} ${wid}] it took ${counter}ms to wait for the element '${elementPath}'`);
                                        callBack();
                                    } else {
                                        if (debug) console.log(`[${widgetName} ${wid}] wait for element '${elementPath}'`);
                                        counter++
                                        waitForElement(parent, elementPath, wid, widgetName, callBack, counter, debug);
                                    }
                                }, 1);
                            } else {
                                console.warn(`[${widgetName} ${wid}] stop waiting after ${counter} retries`);
                                callBack();
                            }
                        }
                    
                    
                    
                    
                    
                    waitForElement($('body'),'.seiteResizen', 'dummy', 'dummy', function () {
                            // Widget ist vollständig geladen, wir können irgendwas damit machen
                                 //Event to handle resizing
                            $(window).resize(function () 
                            {  
                                height = $(window).height(); 
                                width = $(window).width();
                                console.log(width)
                                console.log("Resized"+width);
                                 $(".seiteResizen").text("Resized  Weite: "+width+"  und Höhe: "+height);
                               
                                $("#w00006").css({"width": width/6,"height": height/6});
                                if (width>810) {
                                    $("#w00006").css( {"background-color": "rgb(72 143 89)","font-size": "x-large"});
                                     $("#w00006").text("IN GROSS GEÄNDERT");
                                  
                                }  else 
                                    {$("#w00006").css( {"background-color": "rgb(209, 202, 153)","font-size": "xx-small"});
                                    $("#w00006").text("IN KLEIN GEÄNDERT");     
                                    } 
                            });
                    
                           
                        }, 0, true);
                    

                    weiß nicht, ob euch das weiterhilft

                    M Online
                    M Online
                    MCU
                    wrote on last edited by
                    #5467

                    @liv-in-sky Das hilft schon mal, um einen Anfang zu bekommen. Danke.
                    Weisst du, wie man die Attribute von einem Widget beeinflussen kann?
                    z.B. die 'src' vom widget $(#w00001)?

                    NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                    liv-in-skyL 1 Reply Last reply
                    0
                    • M MCU

                      @liv-in-sky Das hilft schon mal, um einen Anfang zu bekommen. Danke.
                      Weisst du, wie man die Attribute von einem Widget beeinflussen kann?
                      z.B. die 'src' vom widget $(#w00001)?

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      wrote on last edited by
                      #5468

                      @mcu

                      was meinst du mit src - bei einem image die src ???

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      M 1 Reply Last reply
                      0
                      • liv-in-skyL liv-in-sky

                        @mcu

                        was meinst du mit src - bei einem image die src ???

                        M Online
                        M Online
                        MCU
                        wrote on last edited by MCU
                        #5469

                        @liv-in-sky Ja
                        https://forum.iobroker.net/topic/48557/zugriff-auf-vis-widget-attribute-src

                        NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                        Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                        liv-in-skyL 2 Replies Last reply
                        0
                        • M MCU

                          @liv-in-sky Ja
                          https://forum.iobroker.net/topic/48557/zugriff-auf-vis-widget-attribute-src

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          wrote on last edited by liv-in-sky
                          #5470

                          @mcu denke so

                           $("div#w00008, div.vis-widget-body, img.vis-no-user-select").attr( {"src": "https://forum.iobroker.net/assets/uploads/profile/4114-profileavatar-1609575687456.png"});
                          

                          EDIT: besserer CODE :https://forum.iobroker.net/post/690749

                          AApossis (144).gif

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          M 1 Reply Last reply
                          1
                          • liv-in-skyL liv-in-sky

                            @mcu denke so

                             $("div#w00008, div.vis-widget-body, img.vis-no-user-select").attr( {"src": "https://forum.iobroker.net/assets/uploads/profile/4114-profileavatar-1609575687456.png"});
                            

                            EDIT: besserer CODE :https://forum.iobroker.net/post/690749

                            AApossis (144).gif

                            M Online
                            M Online
                            MCU
                            wrote on last edited by
                            #5471

                            @liv-in-sky sagte in jarvis v2.2.0 - just another remarkable vis:
                            Gibt dazu irgendwo eine Doku, wo man sich das anlesen kann?

                            NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                            Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                            liv-in-skyL 1 Reply Last reply
                            0
                            • M MCU

                              @liv-in-sky sagte in jarvis v2.2.0 - just another remarkable vis:
                              Gibt dazu irgendwo eine Doku, wo man sich das anlesen kann?

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              wrote on last edited by
                              #5472

                              @mcu

                              https://api.jquery.com/

                              nicht speziell für iobroker - am besten ein paar youtube video's ansehen und bei speziellen fragen googl'n mitjquery am anfang

                              ps: bin noch nicht ganz happy mit dem img - bin noch am überarbeiten

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              M 1 Reply Last reply
                              0
                              • liv-in-skyL liv-in-sky

                                @mcu

                                https://api.jquery.com/

                                nicht speziell für iobroker - am besten ein paar youtube video's ansehen und bei speziellen fragen googl'n mitjquery am anfang

                                ps: bin noch nicht ganz happy mit dem img - bin noch am überarbeiten

                                M Online
                                M Online
                                MCU
                                wrote on last edited by
                                #5473

                                @liv-in-sky Ja, aber da steht nicht drin, dass man "div.vis-widget-body, img.vis-no-user-select" im Selektor ergänzen muss, damit man an die Attribute kommt. Danke. Ich komme damit schon mal etwas weiter.

                                NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                liv-in-skyL 1 Reply Last reply
                                0
                                • M MCU

                                  @liv-in-sky Ja, aber da steht nicht drin, dass man "div.vis-widget-body, img.vis-no-user-select" im Selektor ergänzen muss, damit man an die Attribute kommt. Danke. Ich komme damit schon mal etwas weiter.

                                  liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  wrote on last edited by
                                  #5474

                                  @mcu

                                  das findest du in der entwicklerumgebung von chrome - das muss man sich raussuchen

                                  AApossis (145).gif

                                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                  M 1 Reply Last reply
                                  1
                                  • liv-in-skyL liv-in-sky

                                    @mcu

                                    das findest du in der entwicklerumgebung von chrome - das muss man sich raussuchen

                                    AApossis (145).gif

                                    M Online
                                    M Online
                                    MCU
                                    wrote on last edited by
                                    #5475

                                    @liv-in-sky Wieder was dazu gelernt. Ich hab mich immer durch die Elemente gekämpft, bis ich das passende erwischt hatte. Mit dem "Untersuchen"-Trick springt er direkt hin. Echt Klasse. Danke.
                                    Ich zwar schon versucht in den Elementen was zu finden, hab aber nur Scripte gesehen, deswegen hab da die Suche aufgegeben. So ist es viel einfacher.

                                    NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                    liv-in-skyL 1 Reply Last reply
                                    1
                                    • M MCU

                                      @liv-in-sky Wieder was dazu gelernt. Ich hab mich immer durch die Elemente gekämpft, bis ich das passende erwischt hatte. Mit dem "Untersuchen"-Trick springt er direkt hin. Echt Klasse. Danke.
                                      Ich zwar schon versucht in den Elementen was zu finden, hab aber nur Scripte gesehen, deswegen hab da die Suche aufgegeben. So ist es viel einfacher.

                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      wrote on last edited by liv-in-sky
                                      #5476

                                      @mcu

                                      was auch noch gut ist - du kannst auswählen, ob du die elemente sehen willst oder die console

                                      in der console setze ich zum testen immer die werte mit console.log - so kann ich überprüfen , was beim starten/refresh bzw bei einem click passiert, ob ich überhaupt in der funktion lande oder welchen wert hat window.width usw

                                      console.log("bin in function"
                                      console.log("wert von width: "+window.width)
                                      usw

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      1 Reply Last reply
                                      1
                                      • liv-in-skyL liv-in-sky

                                        @mcu das macht mein beispiel - das problem könnte eher das iframe sein - das weiß ich nicht so genau :-(

                                        das iframe müßte ja dynamisch sein - das heißt wenn du deine seite verkleinerst, muss auch das fenster des iframes kleiner werden - und ob dann die vis-seite darauf reagiert - keine ahnung) und auch weiß, das auf deiner jarvis seite gerade das fenster kleiner wurde ???

                                        leider kann ich das nicht testen , will jarvis nicht installieren

                                        also das kommt wohl von @RkcCorian

                                        in der vis sieht mein beispiel von oben so aus: steht im script tab der vis
                                        der obere teil ist eine grund-funtion - die ist nur dazu da, auf das erstellen der widgets zu warten - sonst funktioniert das nicht
                                        im unteren teil werden die widgets angesprochen

                                        
                                            function waitForElement(parent, elementPath, wid, widgetName, callBack, counter = 0, debug = false) {
                                                if (counter < 10000) {
                                        
                                                    setTimeout(function () {
                                                        if (parent.find(elementPath).length > 0) {
                                                            if (debug) console.log(`[${widgetName} ${wid}] it took ${counter}ms to wait for the element '${elementPath}'`);
                                                            callBack();
                                                        } else {
                                                            if (debug) console.log(`[${widgetName} ${wid}] wait for element '${elementPath}'`);
                                                            counter++
                                                            waitForElement(parent, elementPath, wid, widgetName, callBack, counter, debug);
                                                        }
                                                    }, 1);
                                                } else {
                                                    console.warn(`[${widgetName} ${wid}] stop waiting after ${counter} retries`);
                                                    callBack();
                                                }
                                            }
                                        
                                        
                                        
                                        
                                        
                                        waitForElement($('body'),'.seiteResizen', 'dummy', 'dummy', function () {
                                                // Widget ist vollständig geladen, wir können irgendwas damit machen
                                                     //Event to handle resizing
                                                $(window).resize(function () 
                                                {  
                                                    height = $(window).height(); 
                                                    width = $(window).width();
                                                    console.log(width)
                                                    console.log("Resized"+width);
                                                     $(".seiteResizen").text("Resized  Weite: "+width+"  und Höhe: "+height);
                                                   
                                                    $("#w00006").css({"width": width/6,"height": height/6});
                                                    if (width>810) {
                                                        $("#w00006").css( {"background-color": "rgb(72 143 89)","font-size": "x-large"});
                                                         $("#w00006").text("IN GROSS GEÄNDERT");
                                                      
                                                    }  else 
                                                        {$("#w00006").css( {"background-color": "rgb(209, 202, 153)","font-size": "xx-small"});
                                                        $("#w00006").text("IN KLEIN GEÄNDERT");     
                                                        } 
                                                });
                                        
                                               
                                            }, 0, true);
                                        

                                        weiß nicht, ob euch das weiterhilft

                                        R Offline
                                        R Offline
                                        RkcCorian
                                        wrote on last edited by RkcCorian
                                        #5477

                                        @liv-in-sky Vielen vielen Dank!!! Diese initiale Info hat mir gefehlt. Ich habe nun Folgendes gemacht... Ist noch viel Fleißarbeit aber ich werde es damit schaffen!!!

                                        $(window).resize(function () 
                                            {  
                                                //Fenstergröße
                                                windowWidth = $(window).width();
                                                windowHeigth = $(window).height(); 
                                                
                                                console.log("Fensterbreite: " + windowWidth);
                                                console.log("Fensterhöhe: " + windowHeigth);
                                        
                                                //Grundrissgröße
                                                grundrissFactor = 1.25;
                                                $("#w00002").css({"width": windowWidth,"height": windowWidth / grundrissFactor});
                                                
                                                //Grundrissgröße nach Anpassung und Referenz für alle anderen
                                                grundrissWidth = $("#w00002").width();
                                                grundrissHeigth = $("#w00002").height(); 
                                                
                                                console.log("Grundrissbreite: " + grundrissWidth);
                                                console.log("Grundrisshöhe: " + grundrissHeigth);
                                                
                                                //Wohnzimmergröße
                                                wohnzimmerFactorTop = 3.265306122;
                                                wohnzimmerFactorLeft = 1.62601626;
                                                wohnzimmerFactorWidth = 2.816901408;
                                                wohnzimmerFactorHeigth = 2.077922078;
                                                $("#w00001").css({"top": grundrissHeigth/wohnzimmerFactorTop, "left": grundrissWidth/wohnzimmerFactorLeft, "width": grundrissWidth/wohnzimmerFactorWidth, "height": grundrissHeigth/wohnzimmerFactorHeigth});        
                                            }
                                        );
                                        

                                        Ergebnis
                                        2703539a-9f62-4c8f-8ce0-4c5e95912c78-image.png

                                        6873bd67-0eef-4840-b16e-1d41c7eb910d-image.png

                                        1 Reply Last reply
                                        0
                                        • liv-in-skyL liv-in-sky

                                          @mcu das macht mein beispiel - das problem könnte eher das iframe sein - das weiß ich nicht so genau :-(

                                          das iframe müßte ja dynamisch sein - das heißt wenn du deine seite verkleinerst, muss auch das fenster des iframes kleiner werden - und ob dann die vis-seite darauf reagiert - keine ahnung) und auch weiß, das auf deiner jarvis seite gerade das fenster kleiner wurde ???

                                          leider kann ich das nicht testen , will jarvis nicht installieren

                                          also das kommt wohl von @RkcCorian

                                          in der vis sieht mein beispiel von oben so aus: steht im script tab der vis
                                          der obere teil ist eine grund-funtion - die ist nur dazu da, auf das erstellen der widgets zu warten - sonst funktioniert das nicht
                                          im unteren teil werden die widgets angesprochen

                                          
                                              function waitForElement(parent, elementPath, wid, widgetName, callBack, counter = 0, debug = false) {
                                                  if (counter < 10000) {
                                          
                                                      setTimeout(function () {
                                                          if (parent.find(elementPath).length > 0) {
                                                              if (debug) console.log(`[${widgetName} ${wid}] it took ${counter}ms to wait for the element '${elementPath}'`);
                                                              callBack();
                                                          } else {
                                                              if (debug) console.log(`[${widgetName} ${wid}] wait for element '${elementPath}'`);
                                                              counter++
                                                              waitForElement(parent, elementPath, wid, widgetName, callBack, counter, debug);
                                                          }
                                                      }, 1);
                                                  } else {
                                                      console.warn(`[${widgetName} ${wid}] stop waiting after ${counter} retries`);
                                                      callBack();
                                                  }
                                              }
                                          
                                          
                                          
                                          
                                          
                                          waitForElement($('body'),'.seiteResizen', 'dummy', 'dummy', function () {
                                                  // Widget ist vollständig geladen, wir können irgendwas damit machen
                                                       //Event to handle resizing
                                                  $(window).resize(function () 
                                                  {  
                                                      height = $(window).height(); 
                                                      width = $(window).width();
                                                      console.log(width)
                                                      console.log("Resized"+width);
                                                       $(".seiteResizen").text("Resized  Weite: "+width+"  und Höhe: "+height);
                                                     
                                                      $("#w00006").css({"width": width/6,"height": height/6});
                                                      if (width>810) {
                                                          $("#w00006").css( {"background-color": "rgb(72 143 89)","font-size": "x-large"});
                                                           $("#w00006").text("IN GROSS GEÄNDERT");
                                                        
                                                      }  else 
                                                          {$("#w00006").css( {"background-color": "rgb(209, 202, 153)","font-size": "xx-small"});
                                                          $("#w00006").text("IN KLEIN GEÄNDERT");     
                                                          } 
                                                  });
                                          
                                                 
                                              }, 0, true);
                                          

                                          weiß nicht, ob euch das weiterhilft

                                          R Offline
                                          R Offline
                                          RkcCorian
                                          wrote on last edited by
                                          #5478

                                          @liv-in-sky Eine Frage noch: Gibt es ein Event, dass mir sagt "Fenster geladen" oder muss ich tatsächlich für eine gewisse Zeit eine "dumme" Schleife bauen?

                                          M liv-in-skyL 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          633

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe