Ergebnis 1 bis 3 von 3
  1. #1
    aazmitia ist offline Eroberer
    registriert
    25-06-2007
    Beiträge
    74

    Zeit ausfüllen

    Bei dieses Problem brauche ich mehr Beratung als ein fertiges Skript (was aber auch nicht schlecht sein würde )

    Was ich machen will ist verschiedene Zeiten für ein Tag ausfüllen und die dann speichern. Start Zeit sollte durch linke Klick gestartet werden und End Zeit durch Ctrl+LinkeKlick beendet werden.

    Dafür habe ich folgendes:
    PHP-Code:
    function makeTables(){
        var 
    str='';

        
    str+='<table id="Montag" width="800" border="1" cellspacing="0" cellpadding="0">';
        
    str+='  <tr>';
        
    str+='    <td class="inhalt"><input type="checkbox" value="1" />Montag</td>';
            for(var 
    1<= 48i++)
                
    str+='    <td class="time" onclick="javascript:setAsSelected(this)">&nbsp;</td>';
        
    str+='   </tr>';
        
    str+='  <tr>';
        
    str+='    <td class="inhalt">&nbsp;</td>';
        
    str+='    <td colspan="48"><img src="photos/hours_bar.png" width="718" height="25" /></td>';
        
    str+='   </tr>';
        
    str+='</table>';
    document.write(str);
    }

    function 
    setAsSelected(tdElement){
        var 
    cell tdElement.cellIndex
        
    var row tdElement.parentNode.rowIndex
        
    var table tdElement.parentNode.parentNode.parentNode.id
        
    //document.Testform.Code.select();
        
    var cellSelection document.getElementById(table).rows[row].cells[cell]
        
        
    cellSelection.style.backgroundColor "#0099FF"

    und dies gefunden:
    PHP-Code:
    function mouseDown(e) {
     var 
    ctrlPressed=0;

     if (
    parseInt(navigator.appVersion)>3) {

      var 
    evt navigator.appName=="Netscape" e:event;

      if (
    navigator.appName=="Netscape" && parseInt(navigator.appVersion)==4) {
       
    // NETSCAPE 4 CODE
       
    var mString =(e.modifiers+32).toString(2).substring(3,6);
       
    ctrlPressed =(mString.charAt(1)=="1");
       
    self.status="modifiers="+e.modifiers+" ("+mString+")"
      
    }
      else {
       
    // NEWER BROWSERS [CROSS-PLATFORM]
       
    ctrlPressed =evt.ctrlKey;
       
    self.status=""
        
    +"ctrlKey=" +ctrlPressed 
      
    }
      if (
    ctrlPressed
        
    /*Hier soll die Start Zelle gelesen werden und
         * beim click die End Zelle.
         */
       
    )
     }
     return 
    true;
    }
    if (
    parseInt(navigator.appVersion)>3) {
     
    document.onmousedown mouseDown;
     if (
    navigator.appName=="Netscape"
      
    document.captureEvents(Event.MOUSEDOWN);

    Ich kann meine Ideen nicht in Ordnung bringen.
    Wie kann ich die Start und End Zelle speichern?

  2. #2
    aazmitia ist offline Eroberer
    registriert
    25-06-2007
    Beiträge
    74

    AW: Zeit ausfüllen

    Die Zeit Einträge sieht so aus. Das Problem ist, dass es ist sehr nerfend jede Zelle einzel zu klicken.
    Angehängte Grafiken Angehängte Grafiken

  3. #3
    aazmitia ist offline Eroberer
    registriert
    25-06-2007
    Beiträge
    74

    AW: Zeit ausfüllen

    Ok, sry, aber einfach anders gelöst. Das mit dem Ctrl war zu kompliziert.
    Ich poste hier meine Lösung, ist ja kein Profi Programmierung, aber vielleicht kann jemand es benutzen.

    PHP-Code:
    function setAsSelected(tdElementstatus){
        var 
    cell tdElement.cellIndex
        
    var row tdElement.parentNode.rowIndex
        
    var table tdElement.parentNode.parentNode.parentNode.id

        
    var cellSelection document.getElementById(table).rows[row].cells[cell]

        if (
    status == "#0099ff")
            
    cellSelection.style.backgroundColor "#ffffff"
        
    else if(status == "#ffffff" || status == "")
            
    cellSelection.style.backgroundColor "#0099ff"
    }

    function 
    activateOver(tdElement){
        var 
    cell tdElement.cellIndex
        
    var row tdElement.parentNode.rowIndex
        
    var table tdElement.parentNode.parentNode.parentNode.id

        
    var cellSelection document.getElementById(table).rows[row].cells[cell]

        var 
    color cellSelection.style.backgroundColor;
        
        if (
    color == "#0099ff")
            
    cellSelection.style.backgroundColor "#ffffff"
        
    else if(color == "#ffffff" || color == "")
            
    cellSelection.style.backgroundColor "#0099ff"

        
    var tdList document.getElementsByTagName('TD');
            for (var 
    0tdList.lengthi++){
                if (
    tdList[i].className == 'time'){
                    
    tdList[i].onmouseover = function() {setAsSelected(thiscolor)}
                }
            }
    }

    function 
    disableOver(){
        var 
    tdList document.getElementsByTagName('TD');
        for (var 
    0tdList.lengthi++){
            if (
    tdList[i].className == 'time'){
                
    tdList[i].onmouseover "";
            }
        }


Ähnliche Themen

  1. Zeit synchronisieren
    Von DerFuchs im Forum JavaScript
    Antworten: 6
    Letzter Beitrag: 07-07-2007, 13:27
  2. Automatischer Button-Click nach bestimmter Zeit
    Von JaSoEIGHT im Forum JavaScript
    Antworten: 0
    Letzter Beitrag: 11-03-2007, 16:55
  3. Zu einer bestimmten Zeit
    Von zimmer55 im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 29-06-2006, 12:09
  4. Wo ist mein Fehler? (JS Zeit Script)
    Von Basti_ im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 10-02-2005, 17:27
  5. aus Unix zeit normale zeit
    Von MasterD im Forum Serverseitige Programmierung
    Antworten: 1
    Letzter Beitrag: 24-04-2001, 10:07

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •