Ankündigung

Einklappen
Keine Ankündigung bisher.

XXEEXECUTE Variablen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    XXEEXECUTE Variablen

    So ich mach mal einen Zusammenstellung von Variabhlen die evtl. brauchbar sind.

    item
    ist das Objekt das die Daten des aktuellen Visuelementes enthallt.

    item.id = die ID
    item.x = XPos
    item.y = YPos
    item.w = Breite
    item.h = Höhe
    item.fcolor = Textfarbe
    item.bcolor = Hintergrundfarbe
    item.txt = Der Text der nachher angezeigt wird
    item.click = 1 heisst hat eine Aktion, 0 heisst nein(item.click=0; entfernt das klick verhalten)
    item.handle = Enthalt das HTML-Objekt nach dem erstellen des DIV
    item.code = Bei Klick Befehl im Format wie (XXEXECUTE)
    item.XXMARK = Markierung des Elements für XXMODULCLICK


    aVisu
    Array das die VisuElemente vom Typ item enthallt
    aVisu[item.id-1].handle = lasst sich verwenden um auf das DIV element aus einer funktion zuzugreifen
    z.B.: um einen klick zu simulieren
    Code:
    window.setTimeout("doCmd(aVisu[" + (item.id-1) + "]);",50);
    loginData
    loginData.user = der User
    loginData.pw = das Passwort

    RefVisu = die aktive RefreshZeit
    XXEXECUTE*RefVisu=10000; // Refreshzeit rauf auf 10sec
    RefMaxVisu = die eingestellte RefreshZeit
    XXEXECUTE*RefVisu=RefMaxVisu; // Refreshzeit auf default zurück

    this.checkItem
    this.checkItem[1] = der JS Code
    this.checkItem[2] = erste Wert in *
    this.checkItem[n] = n-te Wert in *
    XXEEXECUTE*der base64(JS Code)*wert1*Wert2*.....*

    xxAPI.cleanUPobj
    Typ Array, kann Inhalt vom Typ String(für HTML id's) nehmen die versteckt werden sollen oder aber Funktionen die ausgeführt werden und den Wert 0 = zeigen,1=verstecken oder 2=zerstören übergeben bekommen.
    Bsp: aus der APPid121(leicht geandert)
    Code:
    xxAPI.APP121.showHide = function(hide) { 
          switch(hide) {
            case 0:
              xxAPI.APP121.subscribeInt = window.setInterval("xxAPI.APP121.subscribeUpdate()",500);
              break;
            case 2:
              xxAPI.APP121.subscribe = new Array();
            case 1:
              window.clearInterval(xxAPI.APP121.subscribeInt);
              break
           }
        };
        xxAPI.cleanUPobj.push("VLC_DIV");
        xxAPI.cleanUPobj.push(xxAPI.APP121.showHide);
    aufgerufen beim Zeigen einer Makse(1) beim verlassen der Maske(0) beim verlassen der Seite(2)
    Nils

    aktuelle Bausteine:
    BusAufsicht - ServiceCheck - Pushover - HS-Insight

    #2
    Zitat von NilsS Beitrag anzeigen
    aVisu
    Array das die VisuElemente vom Typ item enthällt
    aVisu[item.id-1].handle = lässt sich verwenden um auf das DIV element aus einer funktion zuzugreifen
    z.B.: um einen klick zu simulieren
    Code:
    window.setTimeout("doCmd(aVisu[" + (item.id-1) + "]);",50);
    So wie ich das verstehe kann ich damit auf ein Visuelement klicken? Ich möchte lokal, also nicht serverseitig, beim Klick auf ein Element 2 Modulseiten aktualisieren. Dazu würde ich auf jeder möglichen Modulseite einen versteckten Direktlink auf die aufzurufende Modulseite legen, der dann per XXEXECUTE angeklickt wird.

    Soweit die Theorie. Nur... - wie geht das in der Praxis mit dem XXEXECUTE?

    Kommentar


      #3
      Zitat von emte Beitrag anzeigen
      So wie ich das verstehe kann ich damit auf ein Visuelement klicken? Ich möchte lokal, also nicht serverseitig, beim Klick auf ein Element 2 Modulseiten aktualisieren. Dazu würde ich auf jeder möglichen Modulseite einen versteckten Direktlink auf die aufzurufende Modulseite legen, der dann per XXEXECUTE angeklickt wird.

      Soweit die Theorie. Nur... - wie geht das in der Praxis mit dem XXEXECUTE?
      Die IFRAMES der Modulseiten haben als DOM name den Namen den du hinter XXMODUL angibst also z.B. document.getElementByName("TOPRIGHT_START") ist der IFRAME jetzt kannst du den versteckten elementen mit XXHTML ein div erstellen z.B.
      Code:
      <div id='XXHIDDENLINK1'></div>
      jetzt kannst du mit
      Code:
      mylink = document.getElementById("XXHIDDENLINK1").parentNode.parentNode
      das eigentliche Visuelement. das do mit doCmd(mylink) ausführen kannst. fällt mir jetzt aber auch gerade nicht ein wie das mit dem zugriff auf den IFRAME geht gibt da glaub ich was was du freigeben must external script access.

      ich muss jetzt erstmal los, schreib mal ob was funzt
      Nils

      aktuelle Bausteine:
      BusAufsicht - ServiceCheck - Pushover - HS-Insight

      Kommentar


        #4
        Zitat von NilsS Beitrag anzeigen
        ich muss jetzt erstmal los, schreib mal ob was funzt
        Witzbold! Ich habe zwar jedes einzelne Wort verstanden, bin aber kein Stück schlauer.

        Also ich habe auf jeder Modulseite ein Textobjekt mit Inhalt XXHTML*<div id='XXHLCAM5'></div> erstellt, als Aktion wird die passende Visuseite aufgerufen.

        Auf der aufrufenden Hauptvisuseite, die auch die Module beheimatet, habe ich ein dynamisches Textobjekt erstellt, dem ich bei Klick des passenden Buttons ein XXEXECUTE*base64codierterkram zuweise. Der Kram lautet
        Code:
        mylink = document.getElementById("XXHLCAM5").parentNode.parentNode;
        doCmd(mylink);
        Als Ergebnis bekomme ich einen Error document.getElementById("XXHLCAM5") is null

        Ratlosigkeit...

        (FF 3 und Safari und Mac OS X)

        Kommentar


          #5
          Zitat von emte Beitrag anzeigen
          Witzbold! Ich habe zwar jedes einzelne Wort verstanden, bin aber kein Stück schlauer.

          Also ich habe auf jeder Modulseite ein Textobjekt mit Inhalt XXHTML*<div id='XXHLCAM5'></div> erstellt, als Aktion wird die passende Visuseite aufgerufen.

          Auf der aufrufenden Hauptvisuseite, die auch die Module beheimatet, habe ich ein dynamisches Textobjekt erstellt, dem ich bei Klick des passenden Buttons ein XXEXECUTE*base64codierterkram zuweise. Der Kram lautet
          Code:
          mylink = document.getElementById("XXHLCAM5").parentNode.parentNode;
          doCmd(mylink);
          Als Ergebnis bekomme ich einen Error document.getElementById("XXHLCAM5") is null
          Logisch du befindest dich im Hauptfenster in dem es die ID ja nicht gibt.

          Installier dir für den FF mal Firebug, was besseres für DOM Programierung wirst du nicht finden. du kannst damit in Echtzeit die Programierung ändern, js aufrufen und auch die HTML sowie DOM struktur der Seite durchforsten, inkl. "aller" Javascript Variablen,Objekten.

          dein aufruf müsste irgendwie so sein(muss man doch wieder ganz alleine goooglen)

          Code:
          window.frames['TOPRIGHT_START'].doCmd(window.frames['TOPRIGHT_START'].getElementById("XXHLCAM5").parentNode.parentNode);
          Nils

          aktuelle Bausteine:
          BusAufsicht - ServiceCheck - Pushover - HS-Insight

          Kommentar


            #6
            also ichhab gerade erfolgreich ein click im Modul ausgelöst mit
            Code:
            window.frames['TOPRIGHT_W'].doCmd(window.frames['TOPRIGHT_W'].aVisu[3]);
            evtl. mach ich das in die API mit rein.
            XXEXECUTE*this.modulclick("TOPRIGHT_W",1);this.mod ulclick("BOTTOMRIGHT_N",6)
            mit
            XXHIDDEN*1 auf der Modulseite
            XXHIDDEN*6
            und im MODUL dann
            XXEXECUTE*this.topclick(1)

            EDIT:
            im oberen funzt der Code nicht weil for dem getElementById das document muss.
            Code:
            window.[URL="http://redaktion.knx-user-forum.de/lexikon/frames/"]frames[/URL]['TOPRIGHT_START'].doCmd(window.[URL="http://redaktion.knx-user-forum.de/lexikon/frames/"]frames[/URL]['TOPRIGHT_START'].document.getElementById("XXHLCAM5").parentNode.parentNode);
            sollte funzen
            Nils

            aktuelle Bausteine:
            BusAufsicht - ServiceCheck - Pushover - HS-Insight

            Kommentar


              #7
              Zitat von NilsS Beitrag anzeigen
              ... sollte funzen
              Nö. Das muss aber nicht an Deinen Ausführungen liegen sondern wohl eher an meinen nicht vorhandenen Javascript-Kenntnissen. Bevor das hier ein Javascript Grundkurs wird, gebe ich auf und lass mich überraschen, was die 0.99 so alles bringt...

              Kommentar


                #8
                Gezwungenermaßen schließe ich mich an....
                *grins*
                EPIX
                ...und möge der Saft mit euch sein...
                Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

                Kommentar


                  #9
                  @emte,EPIX
                  bevor ihr's vergesst

                  in der Modulseite
                  XXMARK*WetterMark*Wetter
                  oder
                  XXMARK*2*Sport


                  XXMODULCLICK*TOPRIGHT*WetterMark*BOTTOMRIGHT*2

                  Das XXMARK markiert einen Button dessen Click ausgeführt werden soll,der 2. Parameter ist frei wählbar und wird nicht angezeigt.

                  XXMODULCLICK kann beliebig viele FrameName*Mark enthalten.
                  auch aus den Modulen heraus lässt sich das anwenden.
                  Nils

                  aktuelle Bausteine:
                  BusAufsicht - ServiceCheck - Pushover - HS-Insight

                  Kommentar

                  Lädt...
                  X