1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Calendário como escala de serviço

ola amigos ,como faço para quando eu clicar uma vez em uma determinada data, ela pule 2 dias como vocês podem ver ai no meu cod , mais queria que ela continuasse a marca as datas automaticamente ate acabar todo o calendário ficaria tipo uma escala de serviço! ex. cliquei dia 2, ai marcaria dia 4 e depois dia 6 e depois dia 8 ate acabar o ano ou melhor o calendário por inteiro, todos os anos que coloquei, para quando eu fosse ver seu estaria de serviço por exemplo no natal , ou ate mesmo no meu próximo aniversario que seri`a ano que vem ... e assim vai! poderia me ajudar nisso ?

<!DOCTYPE html>
<HEAD> 

<style type="text/css">
            span.label {
                display: block;
                color:black;
                width:100;
                height:100;
                text-align:center;
                margin-top:0;
                background:#ffF;
                font:bold 40px Arial;
            }
            span.c1 {
                background: none repeat scroll 0 0 #FFFFFF;
                color: black;
                display: block;
                font: bold 40px Arial;
                height: 40px;
                margin-top: 0;
                text-align: center;
                width: 100%;
            }
            span.c2 {
                display: block;
                color:red;
                width:100%;
                height:40px;
                text-align:center;
                margin-top:0;
                background:#ffF;
                font:bold 40px Arial;
            }
            span.c3 {
                cursor:hand;
                color:#b0b0b0;
                width:100%;
                height:40;
                text-align:center;
                margin-top:0;
                background:#ffF;
                font:bold 12px Arial;
            }
        </style>
<script type="text/javascript">




function maxDays(mm, yyyy){
var mDay;
    if((mm == 3) || (mm == 5) || (mm == 8) || (mm == 10)){
        mDay = 30;
      }
      else{
          mDay = 31
          if(mm == 1){
               if (yyyy/4 - parseInt(yyyy/4) != 0){
                   mDay = 28
               }
               else{
                   mDay = 29
              }
        }
  }
return mDay;
}






  function changeBg(id){{{

        dataSele = document.getElementById(id).href;

    if (eval(id).style.backgroundColor != "#e20909"){
        eval(id).style.backgroundColor = "#e20909"

    }
    else{
        eval(id).style.backgroundColor = "#ffffff"
    }



             diap = parseInt(dataSele) + 3;

             decisao = confirm("DIA" +"  " + dataSele  + "  " + " É O SEU PROXIMO SERVIÇO DIURNO?"  )

        if (decisao){

                        val = id.replace(/sp/i,"");
                         val = parseInt(val) + 3;
                         id = "sp"+val;                                              

                       return (eval(id).style.backgroundColor = "#e20909") 



         }



         else {

           eval(id).style.backgroundColor = "#ffffff" 




    }

       }}



                       }





  function writeCalendar(){
var now = new Date
var dd = now.getDate()
var mm = now.getMonth()
var dow = now.getDay()
var yyyy = now.getFullYear()
var arrM = new Array("Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro")
var arrY = new Array()
    for (ii=0;ii<=4;ii++){
        arrY[ii] = yyyy - 2 + ii
    }
var arrD = new Array("D","S","T","Q","Q","S","S")

var text = ""
text = "<form name=calForm>"
text += "<table border=1>"
text += "<tr><td>"
text += "<table width=100%><tr>"
text += "<td align=left>"
text += "<select name=selMonth onChange='changeCal()'>"
    for (ii=0;ii<=11;ii++){
        if (ii==mm){
            text += "<option value= " + ii + " Selected>" + arrM[ii] + "</option>"
        }
        else{
            text += "<option value= " + ii + ">" + arrM[ii] + "</option>"
        }
    }
text += "</select>"
text += "</td>"
text += "<td align=right>"
text += "<select name=selYear onChange='changeCal()'>"
    for (ii=0;ii<=4;ii++){
        if (ii==2){
            text += "<option value= " + arrY[ii] + " Selected>" + arrY[ii] + "</option>"
        }
        else{
            text += "<option value= " + arrY[ii] + ">" + arrY[ii] + "</option>"
        }
    }
text += "</select>"
text += "</td>"
text += "</tr></table>"
text += "</td></tr>"
text += "<tr><td>"
text += "<table border=1>"
text += "<tr>"
    for (ii=0;ii<=6;ii++){
        text += "<td align=center><span class=label>" + arrD[ii] + "</span></td>"
    }
text += "</tr>"
aa = 0
    for (kk=0;kk<=5;kk++){
        text += "<tr>"
        for (ii=0;ii<=6;ii++){
            text += "<td align=center><span id=sp" + aa + " onClick='changeBg(this.id)'>1</span></td>"
            aa += 1
        }
        text += "</tr>"
    }
text += "</table>"
text += "</td></tr>"
text += "</table>"
text += "</form>"
document.write(text)
changeCal()
}         





    function changeCal(){
var now = new Date
var dd = now.getDate()
var mm = now.getMonth()
var dow = now.getDay()
var yyyy = now.getFullYear()
var currM = parseInt(document.calForm.selMonth.value)
var prevM
    if (currM!=0){
        prevM = currM - 1
    }
    else{
        prevM = 11
    }
var currY = parseInt(document.calForm.selYear.value)
var mmyyyy = new Date()
mmyyyy.setFullYear(currY)
mmyyyy.setMonth(currM)
mmyyyy.setDate(1)
var day1 = mmyyyy.getDay()
    if (day1 == 0){
        day1 = 7
    }
var arrN = new Array(41)
var aa
    for (ii=0;ii<day1;ii++){
        arrN[ii] = maxDays((prevM),currY) - day1 + ii + 1
    }
    aa = 1
    for (ii=day1;ii<=day1+maxDays(currM,currY)-1;ii++){
        arrN[ii] = aa
        aa += 1
    }
    aa = 1
    for (ii=day1+maxDays(currM,currY);ii<=41;ii++){
        arrN[ii] = aa
        aa += 1
    }
    for (ii=0;ii<=41;ii++){
        eval("sp"+ii).style.backgroundColor = "#FFFFFF"
    }
var dCount = 0
    for (ii=0;ii<=41;ii++){
        if (((ii<7)&&(arrN[ii]>20))||((ii>27)&&(arrN[ii]<20))){
            eval("sp"+ii).innerHTML = arrN[ii]
            eval("sp"+ii).className = "c3"
        }



        else{
            eval("sp"+ii).innerHTML = arrN[ii]
            if ((dCount==0)||(dCount==6)){
                eval("sp"+ii).className = "c2"
            }
            else{
                eval("sp"+ii).className = "c1"
            }
            if ((arrN[ii]==dd)&&(mm==currM)&&(yyyy==currY)){
                eval("sp"+ii).style.backgroundColor="#90EE90"
            }
        }

    document.getElementById("sp"+ii).href = arrN[ii];
    dCount += 1
        if (dCount>6){
            dCount=0
        }
    }



    }



//  End -->
</script>

</HEAD>

<BODY>

<script type="text/javascript">writeCalendar()</script>

</body>
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags html ou faça a sua própria pergunta.