最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js+html+css實(shí)現(xiàn)簡(jiǎn)單日歷效果

 更新時(shí)間:2022年06月20日 08:57:03   作者:好多bug  
這篇文章主要為大家詳細(xì)介紹了js+html+css實(shí)現(xiàn)簡(jiǎn)單日歷效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了js+html+css實(shí)現(xiàn)簡(jiǎn)單日歷效果的具體代碼,供大家參考,具體內(nèi)容如下

效果:

遇到的問(wèn)題與解決方法:

1.“日”上移

方法:在“下個(gè)月”button后加上<div>&nbsp;</div>防止上移

<div>&nbsp;</div>

2.打完代碼后不顯示日期,但按鈕切換月份可用

方法:最后一行那里,在父元素才可以用,替換為daterow.appendChild(dayElement);

for (var j=1;j<=allday;j++){
? ? ? ? var dayElement=document.createElement('div');
? ? ? ? dayElement.className='everyday';
? ? ? ? dayElement.innerHTML=j+'';
? ? ? ??
? ? ? ? if(j==day){
? ? ? ? ? ? dayElement.style.color='red';
? ? ? ? }
? ? ? ? dayElement.appendChild(dayElement);《《《《《

源代碼:

HTML部分

<!DOCTYPE html>
<html>
?? ?<head>
?? ??? ?<meta charset="utf-8">
?? ??? ?<title>2.2電子日歷的設(shè)計(jì)與實(shí)現(xiàn)</title>
?? ??? ?<link rel="stylesheet" type="text/css" href="css/calendar.css" />
?? ??? ?<script src="js/calendar.js" type="text/javascript" charset="utf-8"></script>
?? ?</head>
?? ?<body onload="showDate()">
?? ??? ?<h3>電子日歷的設(shè)計(jì)與實(shí)現(xiàn)</h3>
?? ??? ?<hr >
?? ??? ?<div id="calendar">
?? ??? ??? ?<!-- 狀態(tài)欄 -->
?? ??? ??? ?<div>
?? ??? ??? ??? ?<!-- 顯示“上個(gè)月”按鈕 -->
?? ??? ??? ??? ?<button onclick="lastMonth()">上個(gè)月</button>
?? ??? ??? ??? ?<!-- 顯示當(dāng)前年份月份 -->
?? ??? ??? ??? ?<div id="month"></div>
?? ??? ??? ??? ?<!-- 顯示“下個(gè)月”按鈕 -->
?? ??? ??? ??? ?<button onclick="nextMonth()">下個(gè)月</button>
?? ??? ??? ??? ?<div> </div> <!--為了調(diào)節(jié)防止“日”上移-->
?? ??? ??? ?</div>
?? ??? ??? ?
?? ??? ??? ?<!-- 顯示星期幾 -->
?? ??? ??? ?<div>
?? ??? ??? ??? ?<div class="everyday">日</div>
?? ??? ??? ??? ?<div class="everyday">一</div>
?? ??? ??? ??? ?<div class="everyday">二</div>
?? ??? ??? ??? ?<div class="everyday">三</div>
?? ??? ??? ??? ?<div class="everyday">四</div>
?? ??? ??? ??? ?<div class="everyday">五</div>
?? ??? ??? ??? ?<div class="everyday">六</div>
?? ??? ??? ?</div>
?? ??? ??? ?
?? ??? ??? ?<!-- 顯示當(dāng)前月份每天的日期 -->
?? ??? ??? ?<div id="day"></div>
?? ??? ?</div>
?? ?</body>
</html>

css部分

div{
?? ?text-align: center;
?? ?margin-top: 10px;
?? ?margin-bottom: 10px;
}
#calendar{
?? ?width: 400px;
?? ?margin: auto;
}
button{
?? ?width: 25%;
?? ?float: left;
?? ?height: 40px;
}
#month{
?? ?width: 50%;
?? ?float: left;
}
.everyday{
?? ?width: 14%;
?? ?float: left;
}

js部分

var today=new Date();
var year=today.getFullYear();
//獲取當(dāng)前年份
var month=today.getMonth()+1;
//獲取當(dāng)前月份
var day=today.getDate();
//獲取當(dāng)前日期
var allday=0;
//當(dāng)前月份的總天數(shù)
?
//用于推算當(dāng)前月份一共多少天
function count(){
?? ?if (month !=2){
?? ??? ?if ((month==4)||(month==6)||(month==9)||(month==11)){
?? ??? ??? ?allday=30;
?? ??? ??? ?//4,6,9,11月份為30天
?? ??? ?}else{
?? ??? ??? ?allday=31;
?? ??? ??? ?//其他月份為31天(不包括2月)
?? ??? ?}
?? ?}else{
?? ??? ?//如果是2月份需要判斷當(dāng)前是否為閏年
?? ??? ?if (((year%4)==0&&(year%100)!=0)||(year%400)==0){
?? ??? ??? ?allday=29;
?? ??? ??? ?//閏年的2月份是29天
?? ??? ?}else{
?? ??? ??? ?allday=28;
?? ??? ??? ?//非閏年的2月份是28天
?? ??? ?}
?? ?}
}
?
//顯示日歷標(biāo)題中的當(dāng)前年份和月份
function showMonth(){
?? ?var year_month=year+"年"+month+"月";
?? ?document.getElementById("month").innerHTML=year_month;
}
?
//顯示當(dāng)前月份的日歷
function showDate(){
?? ?showMonth();//在年份和月份的顯示牌上顯示當(dāng)前的年月
?? ?count();//計(jì)算當(dāng)前月份的總天數(shù)
?? ?
?? ?//獲取本月第一天的日期對(duì)象
?? ?var firstdate=new Date(year,month-1,1);
?? ?
?? ?//推算本月的第一天是星期幾
?? ?var xq=firstdate.getDay();
?? ?
?? ?//動(dòng)態(tài)添加HTML元素
?? ?var daterow=document.getElementById("day");
?? ?daterow.innerHTML='';
?? ?
?? ?//如果本月的第一天不是星期日,則前面需要用空白元素補(bǔ)全日期
?? ?if (xq !=0){
?? ??? ?for (var i=0;i<xq;i++){
?? ??? ??? ?var dayElement=document.createElement('div');
?? ??? ??? ?dayElement.className='everyday';
?? ??? ??? ?daterow.appendChild(dayElement);
?? ??? ?}
?? ?}
?? ?
?? ?//使用循環(huán)語(yǔ)句將當(dāng)前月份的所有日期顯示出來(lái)
?? ?for (var j=1;j<=allday;j++){
?? ??? ?var dayElement=document.createElement('div');
?? ??? ?dayElement.className='everyday';
?? ??? ?dayElement.innerHTML=j+'';
?? ??? ?
?? ??? ?//如果日期為今天,將顯示為紅色
?? ??? ?if(j==day){
?? ??? ??? ?dayElement.style.color='red';
?? ??? ?}
?? ??? ?// dayElement.appendChild(dayElement);
?? ??? ?daterow.appendChild(dayElement);
?? ?}
}
?
//顯示上個(gè)月的日歷
function lastMonth(){
?? ?if (month>1){
?? ??? ?month-=1;
?? ?}else{
?? ??? ?month=12;
?? ??? ?year-=1;
?? ?}
?? ?showDate();
}
?
//顯示下個(gè)月的日歷
function nextMonth(){
?? ?if (month<12){
?? ??? ?month+=1;
?? ?}else{
?? ??? ?month=1;
?? ??? ?year+=1;
?? ?}
?? ?showDate();
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 微信小程序下拉菜單效果的實(shí)例代碼

    微信小程序下拉菜單效果的實(shí)例代碼

    這篇文章主要介紹了微信小程序下拉菜單效果的實(shí)例代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • QRCode.js二維碼生成并能長(zhǎng)按識(shí)別

    QRCode.js二維碼生成并能長(zhǎng)按識(shí)別

    這篇文章主要為大家詳細(xì)介紹了QRCode.js二維碼生成并能長(zhǎng)按識(shí)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • javascript appendChild,innerHTML,join性能比較代碼

    javascript appendChild,innerHTML,join性能比較代碼

    在實(shí)際應(yīng)用中,應(yīng)該避免直接用innerHTML,對(duì)于大量的字符連接運(yùn)算,應(yīng)該考慮先運(yùn)算再輸出。
    2009-08-08
  • javascript格式化指定日期對(duì)象的方法

    javascript格式化指定日期對(duì)象的方法

    這篇文章主要介紹了javascript格式化指定日期對(duì)象的方法,涉及javascript針對(duì)日期對(duì)象操作的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • js加解密 腳本解密

    js加解密 腳本解密

    利用js異或算法實(shí)現(xiàn)腳本加解密的代碼
    2008-02-02
  • JS中箭頭函數(shù)與this的寫(xiě)法和理解

    JS中箭頭函數(shù)與this的寫(xiě)法和理解

    這篇文章主要給大家介紹了關(guān)于JS中箭頭函數(shù)與this的寫(xiě)法和理解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 禁用頁(yè)面部分JavaScript方法的具體實(shí)現(xiàn)

    禁用頁(yè)面部分JavaScript方法的具體實(shí)現(xiàn)

    方法重寫(xiě),重寫(xiě)要禁用的方法,并讓它什么也不做,結(jié)果證明真的可行,但并不知道是不是一個(gè)科學(xué)的方法,我拿出來(lái)與大家共同討論一下
    2013-07-07
  • 解決微信內(nèi)置瀏覽器返回上一頁(yè)強(qiáng)制刷新問(wèn)題方法

    解決微信內(nèi)置瀏覽器返回上一頁(yè)強(qiáng)制刷新問(wèn)題方法

    微信內(nèi)置瀏覽器在返回上一頁(yè)面,且上一頁(yè)面包含AJAX代碼時(shí),頁(yè)面就會(huì)被強(qiáng)制刷新,極度影響用戶體驗(yàn)。而我們想要的效果是:返回上一頁(yè)面時(shí),頁(yè)面還停留在原來(lái)的狀態(tài),AJAX獲取到的數(shù)據(jù)還在,滾動(dòng)條也在原來(lái)的位置。下面跟著小編一起來(lái)看下吧
    2017-02-02
  • 原生js實(shí)現(xiàn)2048小游戲

    原生js實(shí)現(xiàn)2048小游戲

    這篇文章主要為大家詳細(xì)介紹了原生js實(shí)現(xiàn)2048小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • 一文詳解axios四種傳參方式及后端接參

    一文詳解axios四種傳參方式及后端接參

    在開(kāi)發(fā)的過(guò)程中,我們會(huì)經(jīng)常使用到axios進(jìn)行數(shù)據(jù)的交互,這篇文章主要給大家介紹了關(guān)于axios四種傳參方式及后端接參的相關(guān)資料,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-10-10

最新評(píng)論

奇台县| 乌兰浩特市| 阳新县| 天全县| 金湖县| 丹江口市| 抚顺市| 龙川县| 乡宁县| 通渭县| 保靖县| 保靖县| 大名县| 福清市| 原平市| 布拖县| 通许县| 东乡| 武隆县| 九江市| 昌都县| 文安县| 东源县| 商南县| 大石桥市| 麻城市| 德阳市| 昔阳县| 宁津县| 沁阳市| 武定县| 古蔺县| 江安县| 福鼎市| 浦城县| 泗阳县| 韶关市| 新绛县| 永仁县| 兰溪市| 滦平县|