Daniel Grammer: Probleme DIV-Container Markieren

Hi an alle :)

Ich hätte da folgendes Problem ich habe mir einen Kalender in Monatsansicht programmiert!
Funktioniert ganz gut =) jetzt habe ich aber folgendes Problem, ich möchte wenn man auf einen Tag klickt soll der Tag Markiert werden, ist ja kein Problem einfach einen onmouseclick="javascript: this.backgroundColor = 'farbe'" das geht auch jetzt will ich aber nicht nur einen Tag markieren sondern mehrere Tage!
Sprich klicken auf einen Tag nicht auslassen weiterziehen und auslassen!
So soll das ganze in etwa abrennen!
Beste Beispiel dafür wäre der Google-Kalender.
Falls irgendetwas benötigt wird, bitte sagen!

Mit freundlichen Grüßen,
besten Dank

Daniel :)

  1. Das ganze in eine Funktion packen.

    Dann, wenn der User auf ein Div klickt, eine Status-Änderung speichern (in einer Variable).
    Wenn der User dann über weitere Divs fährt, werden diese ebenfalls markiert.

    Lässt der User die Maustaste wieder los, wird der Status zurück geändert.

    1. Das ganze in eine Funktion packen.

      Dann, wenn der User auf ein Div klickt, eine Status-Änderung speichern (in einer Variable).
      Wenn der User dann über weitere Divs fährt, werden diese ebenfalls markiert.

      Lässt der User die Maustaste wieder los, wird der Status zurück geändert.

      Wie meinst du den Status ändern?
      das versteh ich nicht ganz

      1. Du speicherst einen Status in einer variable. Danach weist Du dem Event onmouseup zu, dass bei diesem Event buttonDown auf false gesetzt wird.

        var buttonDown = false;
        window.onmouseup = function(e){setButtonDown(false);}

        Dazu brauchst Du noch eine Funktion:

        function setButtonDown(status)
        {
          buttonDown = status;
        }

        Dann noch eine, um das Div aktivieren zu können

        function setDivState(divElement)
        {
          if (buttonDown)
            ...div aktivieren...
        }

        Die Divs an sich sehen dann etwa so aus:

        <div onclick="setButtonDown(true);" onmousemove="setDivState(this);">...</div>

        Das läuft jetzt so ab: Der User klickt auf einen Div, damit wird buttonDown auf true gesetzt. Wenn er jetzt seine Maus auf einen von den Divs bewegt, wird dieser aktiviert. Lässt er die Maustaste wieder los, wird buttonDown zurück auf false gesetzt

        1. Sehr gut danke, genau das hab ich gesucht :))))))))

          besten dank
          lg

          1. Sehr gut danke, genau das hab ich gesucht :))))))))

            besten dank
            lg

            Kein Problem. Probier es mal aus. Ich habe es nicht getestet :)

            1. Sehr gut danke, genau das hab ich gesucht :))))))))

              besten dank
              lg

              Kein Problem. Probier es mal aus. Ich habe es nicht getestet :)

              jap es funktioniert :)
              du bist genial *ggggg*

  2. Funktioniert ganz gut =) jetzt habe ich aber folgendes Problem, ich möchte wenn man auf einen Tag klickt soll der Tag Markiert werden, ist ja kein Problem einfach einen onmouseclick="javascript: this.backgroundColor = 'farbe'" das geht auch jetzt will

    onmouseclick? Der Event ist mir neu, das Label 'javascript:' hat eine Bedeutung?

    Beste Beispiel dafür wäre der Google-Kalender.

    Dann musst du den onclick oder besser den onmousedown Event mit onmousemove Event verbinden.

    Struppi.

    --
    Javascript ist toll (Perl auch!)
    1. Funktioniert ganz gut =) jetzt habe ich aber folgendes Problem, ich möchte wenn man auf einen Tag klickt soll der Tag Markiert werden, ist ja kein Problem einfach einen onmouseclick="javascript: this.backgroundColor = 'farbe'" das geht auch jetzt will

      onmouseclick? Der Event ist mir neu, das Label 'javascript:' hat eine Bedeutung?

      Beste Beispiel dafür wäre der Google-Kalender.

      Dann musst du den onclick oder besser den onmousedown Event mit onmousemove Event verbinden.

      Struppi.

      Ja ich mein eh onclick :)
      hab mich verschrieben *g*
      hat nur ne bedeutung bei href="javascript:" was ich so mitbekommen hab!
      ja ich hab das ganze schnell zusammengeschrieben da ma sich auskennt ;)

      ja das ma das ganze verbinden muss is mir schon klar, nur hab ich keine ahnung ghabt wie ... bzw. bin ich mir noch nicht ganz sicher!

      lg