修正一些错误

通知支持农历
This commit is contained in:
muzi 2019-04-20 11:41:37 +08:00
parent 51ee45626e
commit cfedaa523b
5 changed files with 205 additions and 38 deletions

View File

@ -851,7 +851,7 @@ body {
} }
/*右键菜单*/ /*右键菜单*/
#win10 .win10-context-menu { left: 0;top: 0;position: fixed; width: 150px; height: auto; background-color: rgb(255, 255, 255,0.75); border: #CCC 1px solid; display: block; border-radius: 5px; z-index: 99999999; } #win10 .win10-context-menu { left: 0;top: 0;position: fixed; width: 150px; height: auto; background-color: rgba(255,255,255,0.75); border: #CCC 1px solid; display: block; border-radius: 5px; z-index: 99999999; }
#win10 .win10-context-menu ul { margin: 0px; padding: 0px; } #win10 .win10-context-menu ul { margin: 0px; padding: 0px; }
#win10 .win10-context-menu ul li {transition: background-color 0.5s;cursor: default;padding: 0px 1em; list-style: none; line-height: 30px; height: 30px; margin: 3px 0; font-size: 13px; } #win10 .win10-context-menu ul li {transition: background-color 0.5s;cursor: default;padding: 0px 1em; list-style: none; line-height: 30px; height: 30px; margin: 3px 0; font-size: 13px; }
#win10 .win10-context-menu ul li:hover { background-color: rgba(49,156,241,0.71);cursor: pointer; } #win10 .win10-context-menu ul li:hover { background-color: rgba(49,156,241,0.71);cursor: pointer; }

View File

@ -4,7 +4,7 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/> <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
<title>mac桌面</title> <title>macOS</title>
<link rel='Shortcut Icon' type='image/x-icon' href='./img/favicon.ico'> <link rel='Shortcut Icon' type='image/x-icon' href='./img/favicon.ico'>
<script type="text/javascript" src="./js/jquery-2.2.4.min.js"></script> <script type="text/javascript" src="./js/jquery-2.2.4.min.js"></script>
<link href="./css/animate.css" rel="stylesheet"> <link href="./css/animate.css" rel="stylesheet">
@ -83,7 +83,7 @@
<img class="icon" src="./img/icon/icloud.png"/> <img class="icon" src="./img/icon/icloud.png"/>
<div class="title">iCloud</div> <div class="title">iCloud</div>
</div> </div>
<div class="shortcut" onclick="Win10.openUrl('https://www.oschina.net/p/win10-ui','<img class=\'icon\' src=\'./img/icon/maps.png\'/>Map')"> <div class="shortcut" onclick="Win10.openUrl('https://map.baidu.com','<img class=\'icon\' src=\'./img/icon/maps.png\'/>Map')">
<img class="icon" src="./img/icon/maps.png"/> <img class="icon" src="./img/icon/maps.png"/>
<div class="title">地图</div> <div class="title">地图</div>
</div> </div>
@ -91,9 +91,9 @@
<img class="icon" src="./img/icon/prefapp.png"/> <img class="icon" src="./img/icon/prefapp.png"/>
<div class="title">设置</div> <div class="title">设置</div>
</div> </div>
<div class="shortcut" ondblclick='Win10.openUrl("./login.html","<i class=\"fa fa-user icon black-green\"></i>登录页")'> <div class="shortcut" onclick='window.open("./login.html","<i class=\"fa fa-user icon black-green\"></i>登录页")'>
<i class="fa fa-user icon black-green"></i> <i class="fa fa-user icon black-green"></i>
<div class="title">登录页(双击)</div> <div class="title">登录页</div>
</div> </div>
<div class="shortcut win10-open-window flipInX animated" data-url="./plugins/theme_switcher/theme_switcher.html" style="left: 92px; top: 510px;"> <div class="shortcut win10-open-window flipInX animated" data-url="./plugins/theme_switcher/theme_switcher.html" style="left: 92px; top: 510px;">
<img class="icon" src="./img/icon/DesktopScreenEffectsPref.png"/> <img class="icon" src="./img/icon/DesktopScreenEffectsPref.png"/>

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

View File

@ -4,7 +4,7 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/> <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
<title>mac桌面</title> <title>macOS</title>
<link rel='Shortcut Icon' type='image/x-icon' href='./img/favicon.ico'> <link rel='Shortcut Icon' type='image/x-icon' href='./img/favicon.ico'>
<script type="text/javascript" src="./js/jquery-2.2.4.min.js"></script> <script type="text/javascript" src="./js/jquery-2.2.4.min.js"></script>
<link href="./css/animate.css" rel="stylesheet"> <link href="./css/animate.css" rel="stylesheet">
@ -65,7 +65,7 @@
<div id="win10-shortcuts" class="shortcuts-hidden"> <div id="win10-shortcuts" class="shortcuts-hidden">
<div class="shortcut" onclick="Win10.openUrl('http://win10ui.yuri2.cn','<img class=\'icon\' src=\'./img/icon/computer.png\'/>UI官网')"> <div class="shortcut" onclick="Win10.openUrl('http://win10ui.yuri2.cn','<img class=\'icon\' src=\'./img/icon/computer.png\'/>UI官网')">
<img class="icon" src="./img/icon/computer.png"/> <img class="icon" src="./img/icon/computer.png"/>
<div class="title">UI官网</div> <div class="title">OS官网</div>
</div> </div>
<div class="shortcut" onclick="window.open('./demo.html')"> <div class="shortcut" onclick="window.open('./demo.html')">
<img class="icon" src="./img/icon/demo.png"/> <img class="icon" src="./img/icon/demo.png"/>

229
js/mac.js
View File

@ -333,11 +333,9 @@ window.Win10 = {
$('#win10_command_center').on('click',".command-header div", function () { $('#win10_command_center').on('click',".command-header div", function () {
if (!$(this).hasClass('active')) { if (!$(this).hasClass('active')) {
if ($(this).hasClass('tab-today')) { if ($(this).hasClass('tab-today')) {
console.log(1);
$(this).parent().siblings('.msgs').hide().siblings('.today').show(); $(this).parent().siblings('.msgs').hide().siblings('.today').show();
$(this).addClass('active').siblings('div').removeClass('active'); $(this).addClass('active').siblings('div').removeClass('active');
}else{ }else{
console.log(2);
$(this).parent().siblings('.today').hide().siblings('.msgs').show(); $(this).parent().siblings('.today').hide().siblings('.msgs').show();
$(this).addClass('active').siblings('div').removeClass('active'); $(this).addClass('active').siblings('div').removeClass('active');
} }
@ -432,19 +430,8 @@ window.Win10 = {
}); });
setInterval(function () { setInterval(function () {
//重新写mac时间 //重新写mac时间
var myDate = new Date(); var myDate = Win10.getLunarObj();
var week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六")[myDate.getDay()]; $("#win10_btn_time").html(myDate.week+myDate.hour+':'+myDate.minute);
var hour=myDate.getHours();
var mins=myDate.getMinutes();if (mins<10){mins='0'+mins}
if(hour < 6){hours='凌晨'+hour;}
else if (hour < 9){hours='早上'+hour;}
else if (hour < 12){hours='上午'+hour;}
else if (hour < 14){hours='中午'+(hour-12);}
else if (hour < 17){hours='下午'+(hour-12);}
else if (hour < 19){hours='傍晚'+(hour-12);}
else if (hour < 22){hours='晚上'+(hour-12);}
else {hours='深夜'+(hour-12)}
$("#win10_btn_time").html(week+hours+':'+mins);
},1000); },1000);
//离开前警告 //离开前警告
document.body.onbeforeunload = function(event){ document.body.onbeforeunload = function(event){
@ -589,27 +576,207 @@ window.Win10 = {
this._showShortcut(); this._showShortcut();
$(".win10-open-iframe").removeClass('hide'); $(".win10-open-iframe").removeClass('hide');
}, },
getLunarObj: function () {
//农历年信息
var lunarInfo = new Array(
0x04bd8,0x04ae0,0x0a570,0x054d5,0x0d260,0x0d950,0x16554,0x056a0,0x09ad0,0x055d2,
0x04ae0,0x0a5b6,0x0a4d0,0x0d250,0x1d255,0x0b540,0x0d6a0,0x0ada2,0x095b0,0x14977,
0x04970,0x0a4b0,0x0b4b5,0x06a50,0x06d40,0x1ab54,0x02b60,0x09570,0x052f2,0x04970,
0x06566,0x0d4a0,0x0ea50,0x06e95,0x05ad0,0x02b60,0x186e3,0x092e0,0x1c8d7,0x0c950,
0x0d4a0,0x1d8a6,0x0b550,0x056a0,0x1a5b4,0x025d0,0x092d0,0x0d2b2,0x0a950,0x0b557,
0x06ca0,0x0b550,0x15355,0x04da0,0x0a5d0,0x14573,0x052d0,0x0a9a8,0x0e950,0x06aa0,
0x0aea6,0x0ab50,0x04b60,0x0aae4,0x0a570,0x05260,0x0f263,0x0d950,0x05b57,0x056a0,
0x096d0,0x04dd5,0x04ad0,0x0a4d0,0x0d4d4,0x0d250,0x0d558,0x0b540,0x0b5a0,0x195a6,
0x095b0,0x049b0,0x0a974,0x0a4b0,0x0b27a,0x06a50,0x06d40,0x0af46,0x0ab60,0x09570,
0x04af5,0x04970,0x064b0,0x074a3,0x0ea50,0x06b58,0x055c0,0x0ab60,0x096d5,0x092e0,
0x0c960,0x0d954,0x0d4a0,0x0da50,0x07552,0x056a0,0x0abb7,0x025d0,0x092d0,0x0cab5,
0x0a950,0x0b4a0,0x0baa4,0x0ad50,0x055d9,0x04ba0,0x0a5b0,0x15176,0x052b0,0x0a930,
0x07954,0x06aa0,0x0ad50,0x05b52,0x04b60,0x0a6e6,0x0a4e0,0x0d260,0x0ea65,0x0d530,
0x05aa0,0x076a3,0x096d0,0x04bd7,0x04ad0,0x0a4d0,0x1d0b6,0x0d250,0x0d520,0x0dd45,
0x0b5a0,0x056d0,0x055b2,0x049b0,0x0a577,0x0a4b0,0x0aa50,0x1b255,0x06d20,0x0ada0);
var Animals=new Array("鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪");
var Gan=new Array("甲","乙","丙","丁","戊","己","庚","辛","壬","癸");
var Zhi=new Array("子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥");
//==== 传回农历 y年的总天数
function lYearDays(y) {
var i, sum = 348
for(i=0x8000; i>0x8; i>>=1) sum += (lunarInfo[y-1900] & i)? 1: 0
return(sum+leapDays(y))
}
//==== 传回农历 y年闰月的天数
function leapDays(y) {
if(leapMonth(y))
return((lunarInfo[y-1900] & 0x10000)? 30: 29)
else
return(0)
}
//==== 传回农历 y年闰哪个月 1-12 , 没闰传回 0
function leapMonth(y) {
return(lunarInfo[y-1900] & 0xf);
}
//==== 传回农历 y年m月的总天数
function monthDays(y,m) {
return((lunarInfo[y-1900] & (0x10000>>m))? 30: 29 );
}
//==== 算出农历, 传入日期物件, 传回农历日期物件
// 该物件属性有 .year .month .day .isLeap .yearCyl .dayCyl .monCyl
function lunar(objDate) {
var i, leap=0, temp=0
var baseDate = new Date(1900,0,31)
var offset = (objDate - baseDate)/86400000
this.dayCyl = offset + 40
this.monCyl = 14
for(i=1900; i<2050 && offset>0; i++) {
temp = lYearDays(i)
offset -= temp
this.monCyl += 12
}
if(offset<0) {
offset += temp;
i--;
this.monCyl -= 12
}
this.year = i
this.yearCyl = i-1864
leap = leapMonth(i) //闰哪个月
this.isLeap = false
for(i=1; i<13 && offset>0; i++) {
//闰月
if(leap>0 && i==(leap+1) && this.isLeap==false)
{ --i; this.isLeap = true; temp = leapDays(this.year); }
else
{ temp = monthDays(this.year, i); }
//解除闰月
if(this.isLeap==true && i==(leap+1)) this.isLeap = false
offset -= temp
if(this.isLeap == false) this.monCyl ++
}
if(offset==0 && leap>0 && i==leap+1)
if(this.isLeap)
{ this.isLeap = false; }
else
{ this.isLeap = true; --i; --this.monCyl;}
if(offset<0){ offset += temp; --i; --this.monCyl; }
this.month = i
this.day = offset + 1
}
//获取农历(月)中文格式
function get_lunarmonth(month){
var fm = ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","腊月"];
return fm[month-1];
}
//获取农历(日)中文格式
function get_lunarday(day){
var fd = ["十","一","二","三","四","五","六","七","八","九","十"];
if(day <= 10){
return "初"+fd[day];
}
else if(day < 20){
return "十"+fd[day-10];
}
else if(day==20){
return "二十";
}
else if(day < 30){
return "廿"+fd[day-20];
}
else{
return "三"+fd[day-30];
}
}
//获取干支
function get_ganzhi(year) {
var num = year-1900+36;
return(Gan[num%10]+Zhi[num%12]);
}
//获取生肖
function get_animal(year){
return Animals[(year-4)%12];
}
//获取周
function get_week(date){
var values = ["周日", "周一", "周二", "周三", "周四", "周五", "周六"];
return values[date.getDay()];
}
//获取分钟
function get_min(date){
var mins=date.getMinutes();
if (mins<10){
mins='0'+mins
}
return mins;
}
//获取小时
function get_hour(date){
var hour=date.getHours();
if(hour < 6){hours='凌晨'+hour;}
else if (hour < 9){hours='早上'+hour;}
else if (hour < 12){hours='上午'+hour;}
else if (hour < 14){hours='中午'+(hour-12);}
else if (hour < 17){hours='下午'+(hour-12);}
else if (hour < 19){hours='傍晚'+(hour-12);}
else if (hour < 22){hours='晚上'+(hour-12);}
else {hours='深夜'+(hour-12)}
return hours;
}
var viewdate = {};
var date = new Date();
//秒
viewdate.second = date.getSeconds();;
//分钟
viewdate.minute = get_min(date);
//小时
viewdate.hour = get_hour(date);
//日期
viewdate.day = date.getDay();
//星期
viewdate.week = get_week(date);
//月
viewdate.month = date.getMonth()+1;
//完整的年份(4位,1970-????)
viewdate.fullYear = date.getFullYear();
//年份(2位)
viewdate.year = date.getYear();
//农历信息
var lunar_obj = new lunar(date);
//农历中文月
viewdate.lunarmonth = get_lunarmonth(lunar_obj.month);
//农历中文日
var lunar_day = Math.floor(lunar_obj.day);
viewdate.lunarday = get_lunarday(lunar_day);
//农历年月日
viewdate.lunar = lunar_obj.year + "-" + lunar_obj.month + "-" + lunar_day;
//干支
viewdate.ganzhi = get_ganzhi(lunar_obj.year);
//生肖
viewdate.animal = get_animal(lunar_obj.year);
return viewdate;
},
//消息中心渲染 //消息中心渲染
renderCommand:function (today=null) { renderCommand:function (today=null) {
var active = $("#win10_command_center .command-body.today").hasClass('active'); var active = $("#win10_command_center .command-body.today").hasClass('active');
if (!active) { if (!active) {
if (!today) { if (!today) {
var myDate = new Date(); var lunarDate = Win10.getLunarObj();
var week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六")[myDate.getDay()];
var hour=myDate.getHours();
var mins=myDate.getMinutes();if (mins<10){mins='0'+mins}
if(hour < 6){hours='凌晨'+hour;}
else if (hour < 9){hours='早上'+hour;}
else if (hour < 12){hours='上午'+hour;}
else if (hour < 14){hours='中午'+(hour-12);}
else if (hour < 17){hours='下午'+(hour-12);}
else if (hour < 19){hours='傍晚'+(hour-12);}
else if (hour < 22){hours='晚上'+(hour-12);}
else {hours='深夜'+(hour-12)}
today = '<div class="command-body-calendar">' + today = '<div class="command-body-calendar">' +
'<div class="command-body-calendar-date normal-date">'+(myDate.getMonth()+1)+'月'+myDate.getDay()+'日 '+week+'</div>' + '<div class="command-body-calendar-date normal-date">'+lunarDate.month+'月'+lunarDate.day+'日 '+lunarDate.week+'</div>' +
'<div class="command-body-calendar-date lunar-date">'+''+'</div>' + '<div class="command-body-calendar-date lunar-date">'+lunarDate.ganzhi+'年'+lunarDate.lunarmonth+lunarDate.lunarday+'</div>' +
'</div>' + '</div>' +
'<div class="notice">' + '<div class="notice">' +
'<div class="notice-header">' + '<div class="notice-header">' +
@ -619,7 +786,7 @@ window.Win10 = {
'<div class="notice-body">' + '<div class="notice-body">' +
'<div class="weather-item">' + '<div class="weather-item">' +
'<div class="weather-city">' + '<div class="weather-city">' +
'<span class="weather-city-time">'+hours+':'+mins+'</span>'+ '<span class="weather-city-time">'+lunarDate.hour+':'+lunarDate.minute+'</span>'+
'<span class="weather-city-text">广州市</span>' + '<span class="weather-city-text">广州市</span>' +
'</div>' + '</div>' +
'<div class="weather-type"><img src="http://yun.rili.cn/wnl/img/cloud.png" alt="多云" /></div>' + '<div class="weather-type"><img src="http://yun.rili.cn/wnl/img/cloud.png" alt="多云" /></div>' +