Matt Kruse 的 JavaScript 日历 - 今天的日期/其他月份的日期

Matt Kruse's JavaScript Calendar - today's date / other months dates

我有一个关于 Matt Kruse 在此页面上非常好的(但未更新的日历)的问题:http://www.mattkruse.com/javascript/calendarpopup/
(很多示例和代码都在那里 - 在这里你可以找到一个简单的例子:http://www.mattkruse.com/javascript/calendarpopup/simple.html

日历运行良好(我正在使用 "Lightbox / DIV-style display"),但无法在其他月份的日期停用或隐藏突出显示的 "todays-Date"。

(压延机的外观和工作方式类似于标准 Windows/Office- 压延机 -
"OtherMonthDates" 显示在 color:grey 中)

例如:
如果您选择今天月份的日期 - 没问题:
今天是 5 月 6 日,当我查看 May 时,这一天被突出显示。
但是如果我回到 4 月,5 月 6 日仍然突出显示,我不想要这个。

我已经尝试了所有方法,但我只成功禁用/"not display" "OtherMonthDates" 中的 A-Tag,但实际月份的当前日期仍会显示在其他月份。

我编辑了 css 并且 - 使用这个简单的 CSS 解决方法:隐藏(仅)当前月份的 otherMonthDates:

.TESTcpOtherMonthDate a {
     display: none;
}

抱歉我的英语不好,谢谢你的帮助。

  1. 打开CalendarPopup.js脚本文件。

  2. 在文件末尾搜索函数 CP_getCalendar()

  3. 去找这段代码:

if((display_month == this.currentDate.getMonth()+1) &&(display_date==this.currentDate.getDate()) &&(display_year==this.currentDate.getFullYear())){dateClass = "cpCurrentDate";}else if(display_month == month){dateClass = "cpCurrentMonthDate";}else{dateClass = "cpOtherMonthDate";}

并用这段代码替换它:

if((display_month == this.currentDate.getMonth()+1) &&(display_date==this.currentDate.getDate()) &&(display_year==this.currentDate.getFullYear()) && (last_month == this.currentDate.getMonth())){dateClass = "cpCurrentDate";}else if(display_month == month){dateClass = "cpCurrentMonthDate";}else{dateClass = "cpOtherMonthDate";}
  1. 现在您的日历看起来会像预期的那样。如果您查看当前月份(左图),则当天将突出显示,如果您查看上个月(右图),则不会应用突出显示: