您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
对4个日期框做数据同步,修改起始日期会默认对结束日期+7,同时会对“服务时间”框日期部分进行更新。
// ==UserScript== // @name 志愿云,日期自动填写脚本 // @license AGPL License // @namespace https://penicillin.github.io/ // @description 对4个日期框做数据同步,修改起始日期会默认对结束日期+7,同时会对“服务时间”框日期部分进行更新。 // @version 0.2.3 // @include *://www.fjvs.org/app/opp/* // @include *://fj.zhiyuanyun.com/app/opp/* // @license MIT // ==/UserScript== Date.prototype.Format=function(fmt) { var o = { "M+" : this.getMonth()+1, //月份 "d+" : this.getDate(), //日 "h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时 "H+" : this.getHours(), //小时 "m+" : this.getMinutes(), //分 "s+" : this.getSeconds(), //秒 "q+" : Math.floor((this.getMonth()+3)/3), //季度 "S" : this.getMilliseconds() //毫秒 }; var week = { "0" : "/u65e5", "1" : "/u4e00", "2" : "/u4e8c", "3" : "/u4e09", "4" : "/u56db", "5" : "/u4e94", "6" : "/u516d" }; if(/(y+)/.test(fmt)){ fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); } if(/(E+)/.test(fmt)){ fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[this.getDay()+""]); } for(var k in o){ if(new RegExp("("+ k +")").test(fmt)){ fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length))); } } return fmt; } var Weekdiv = document.createElement('div') //创建div标签 Weekdiv.setAttribute('id',"Weekdiv");//定义标签ID Weekdiv.style.display='inline-block';//设置显示方式 Weekdiv.style.color='white';//设置显示方式 Weekdiv.style.padding='0px 15px' Weekdiv.style.fontWeight='bold' var titileStringEL=document.getElementById('opp_name'); titileStringEL.parentNode.appendChild(Weekdiv) var userV1=document.getElementById('opp_start_date'); var userV2=document.getElementById('opp_end_date'); var userV3=document.getElementById('opp_recruit_start_date'); var userV4=document.getElementById('opp_recruit_end_date'); var userOpp_date_desc=document.getElementById('opp_date_desc'); userV1.removeAttribute('readonly') userV2.removeAttribute('readonly') userV3.removeAttribute('readonly') userV4.removeAttribute('readonly') for(var i=0;i<4;i++){ document.getElementById('jSelectDateContainer1').remove() } userV3.style.opacity='0.3';//灰色显示 userV4.style.opacity='0.3';//灰色显示 var userWeekDiv=document.getElementById('Weekdiv'); var titileStringDate var startDate var endDate function getFormatedDate(str){ var DateStr=str.split('-'); return new Date(DateStr[0],DateStr[1]-1,DateStr[2]); } function getWeekDay(date){ var weekDay = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]; var colors; switch(date.getDay()){ case 0: colors='red' break; case 6: colors='green' break; default: colors='black' break; } Weekdiv.style.backgroundColor=colors;//设置显示方式 return weekDay[date.getDay()]; } function setAllDate(){ titileStringDate=getFormatedDate(titileStringEL.value.match(/(\(=?)(\S*)(?=\))/)[2]);//拿到标题日期字符串并转为日期格式 startDate=addDate(titileStringDate, -6);//初始化开始日期为结束前的6天 endDate=addDate(startDate,6);//初始化结束日期为周六 userV1.value=startDate.Format('yyyy-MM-dd') setOtherDate();//设置其余日期 userOpp_date_desc.value=userOpp_date_desc.value.replaceAll(/\d{4}-\d{2}-\d{2}/g,titileStringDate.Format('yyyy-MM-dd')); } function addDate(date, days) { if (days == undefined || days == '') { days = 0; } return new Date(date.valueOf()+ days * 24 * 60 * 60 * 1000); } function setOtherDate(){ userV2.value=endDate.Format('yyyy-MM-dd') userV3.value=userV1.value userV4.value=userV2.value userWeekDiv.innerHTML=getWeekDay(titileStringDate); } titileStringEL.addEventListener('keyup',function(){setAllDate()});//注册事件 userV1.addEventListener('keyup',function(){userV3.value=userV1.value;setOtherDate()});//注册事件 userV2.addEventListener('keyup',function(){userV4.value=userV2.value});//注册事件 setAllDate();