关于时间控制和制定时间日期

关于时间控制,动画效果

<meta charset="UTF-8">
        <title></title>
        <style>
            #dh {
                width: 50px;
                height: 50px;
                background-color: royalblue;
            }
        </style>
    </head>

    <body>
        <div id="dh"></div>
    </body>
<script>
    var dh = document.getElementById("dh");

    //alert(dh.offsetLeft);
    function move() {
        dh.style.marginLeft = dh.offsetLeft + 1 + ‘px‘;
    }

    var x = window.setInterval(‘move()‘, 20);
    var y = window.setInterval(‘move()‘, 500);

    function clear() {
        window.clearInterval(x);
    }

    window.setTimeout("clear()",2500);
</script>

显示年月日代码

    <body>
        <select id="year"></select>
        <select id="month"></select>
        <select id="day"></select>

    </body>
<script>
    var time = new Date();
    var year_now = time.getFullYear();

    var slt_year = document.getElementById(‘year‘);
    var slt_month = document.getElementById(‘month‘);
    var slt_day = document.getElementById(‘day‘);

    for(var i = 1990; i <= year_now; i++) {
        var new_opt = document.createElement(‘option‘);
        new_opt.innerText = i;
        slt_year.appendChild(new_opt);
    }

    for(var i = 1; i <= 12; i++) {
        var new_opt2 = document.createElement(‘option‘);
        new_opt2.innerText = i;
        slt_month.appendChild(new_opt2);
    }

    slt_year.onchange = function() {
        change();
    }

    slt_month.onchange = function() {
        change();
    }

    function change() {
        var year = slt_year.selectedOptions[0].innerText;
        var month = slt_month.selectedOptions[0].innerText;

        if(month == 4 || month == 6 || month == 9 || month == 11) {
            add_day(30); //增加天数
        } else if(month == 2) {
            if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                add_day(29)
            } else {
                add_day(28)
            }
        } else {
            add_day(31);
        }
    }

    function add_day(i_max) {
        slt_day.innerText = ‘‘;
        for(var i = 1; i <= i_max; i++) {
            var new_opt3 = document.createElement(‘option‘);
            new_opt3.innerText = i;
            slt_day.appendChild(new_opt3);
        }
    }
</script>

这个要考虑平年闰年还有每个月三十天或者三十一天。

显示年月日表单,循环的方法。

<body>
        <select id=‘year‘ size=‘1‘ style="width: 80px;"></select>
        <select id=‘month‘ size=‘1‘ style="width: 80px;"></select>
        <select id=‘day‘ size=‘1‘ style="width: 80px;"></select>
    </body>
</html>
<script>
    var year = document.getElementById(‘year‘);
    var month = document.getElementById(‘month‘);
    var day = document.getElementById(‘day‘);
    for(i=1990;i<2018;i++){
        var opt=document.createElement(‘option‘);
        opt.innerText=i;
        year.appendChild(opt);

    }
    for(j=1;j<13;j++){
        var opt2=document.createElement(‘option‘);
        opt2.innerText=j;
        month.appendChild(opt2);
    }
    for(k=1;k<32;k++){
        var opt3=document.createElement(‘option‘);
        opt3.innerText=k;
        day.appendChild(opt3);
    }

    month.onchange=function(){
        day.options[28].style.display=‘inline‘
        day.options[29].style.display=‘inline‘
        day.options[30].style.display=‘inline‘
        y=year.selectedOptions[0].value;
        m=month.selectedOptions[0].value;
        if(y%4==0&&y%100!==0||y%400==0){
            if(m==2){
                day.options[29].style.display=‘none‘
                day.options[30].style.display=‘none‘
            }else{
                if(m==4|m==6|m==9|m==11){
                    day.options[30].style.display=‘none‘
                }
            }
        }else{
            if(m==2){
                day.options[28].style.display=‘none‘
                day.options[29].style.display=‘none‘
                day.options[30].style.display=‘none‘
            }else{
                if(m==4|m==6|m==9|m==12){
                    day.options[30].style.display=‘none‘
                }
            }
        }
    }
</script>

这个办法比较笨,一步步下来还是很清晰的。考虑到所有会出现的情况。

时间: 2024-08-13 17:27:02

关于时间控制和制定时间日期的相关文章

关于JS的时间控制实现动态效果及实例操作

关于JS的时间控制 <script>        BOM   //Bowers Object Model   浏览器对象模型    setTimeout()//    延迟执行一次    setInterval()//    间隔执行    var a = 300;    window.setTimeout('abc(a)',3000);//    自定义函数赋值    function abc(i)    {        alert(i);    } //setInterval('ale

iOS CoreAnimation专题——原理篇(四)动画时间控制

前言 CAMediaTiming协议 可视化的CAMediaTiming协议 beginTime fillMode autoreverses repeatCount repeatDuration speed 动画速度的分层表示 CAMediaTiming协议的其他实现 timeOffset 更多的动画时间可视化插图 控制动画时间 Slider 关于fillMode和Ease的补充 fillMode Ease 后记 前言 这一章虽然叫做动画时间控制,然而我们并不会去深入到一般的动画时间中,我们将讨

起止时间控制,显示格式控制

//<script src="<!--{$smarty.const.BASE_PATH}-->/js/public/My97DatePicker/WdatePicker.js"></script> html中引入WdatePicker.js文件 一.开始结束时间相互限制 例1.两个input中时间相关联 <tr> <td>开始时间<label class="must-tag">*</lab

Tuxedo 超时时间控制(转贴)

以下是转贴: ----------------------------------------------------------------------------------------------------------------------------------------------- 源于才文章确实详细,暂且转载于此,谢原发帖主人. Tuxedo 超时控制(转贴)原帖发于DEV2DEV,现转贴在此. TUXEDO超时控制全功略 摘要: 本<功略>集中了TUXEDO应用中,可能涉

关于时间的操作(Java版)——获取距离系统时间N天后的日期时间信息

import java.util.Calendar; import java.util.TimeZone; public class Test { /** * 获取距离系统时间N天后的日期时间信息 * * @author GaoHuanjie */ public String getDateAfterNdays(int days){ Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("GMT+8")); cale

java 日期和字符串互转,依据当天整天时间 得到当天最后一秒的日期时间

java 日期和字符串互转.依据当天整天时间   得到当天最后一秒的日期时间 package com.hi; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * 依据当天整天时间 * 得到当天最后一秒 * 数据库查询时非常有意义 起始天 到结速天 比方按天查询 2014-06-17 00:00:00

java 日期和字符串互转,根据当天整天时间 得到当天最后一秒的日期时间

java 日期和字符串互转,根据当天整天时间   得到当天最后一秒的日期时间 package com.hi; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * 根据当天整天时间 * 得到当天最后一秒 * 数据库查询时很有意义 起始天 到结速天 比如按天查询 2014-06-17 00:00:00

bat 获取系统日期,时间,并去掉时间小时前面的空格和时间后面的空格

@echo off rem BAT获取系统日期,时间,并去掉时间小时前面的空格和时间后面的空格 echo *** %DATE% echo *** %TIME% set THISDATE=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2% echo %THISDATE% rem 去掉小时前的空格 set h=%time:~0,2% set h=%h: =0% set log_filename=%date:~0,4%%date:~5,2%%date:~8,2%%h%%time:~3,

php课外笔记--控制网页过期时间

php课外笔记--控制网页过期时间 PHP培训笔记中记录的关于控制网页过期时间的程序: 有时我们需要控制主页之类的网页过期时间.但我们比如使用的是Chinacache的CDN,那要怎么样设计才能缓存内容. 当然,前提要先打开CDN中一个功能reload_into_ims on.这样用户发送过来no-cache也不怕了.因为这样会给给no-cache转成If-Modified-Since .所以我们写程序主要是对If-Modified-Since控制就好了.记的,缓存系统架构中计中最好是后端来控制