我正在寻找一种方法,在鼠标悬停时突出显示2个输入日期之间的日子。
这个例子几乎实现了我想要达到的效果:http://hackingon.net/files/jquery_datepicker/range.htm 唯一的区别是所选范围的高亮显示应该发生在两个单独的日期选择器上,并且是在鼠标悬停时。
有什么建议吗?
更新:
好的,再多些细节:
在从第一个日期选择器中选择日期后,第二个日期选择器应突出显示先前选择的日期。如果您然后将鼠标悬停在先前选择的日期之后的某一天,所有介于它们之间的天数都应该突出显示添加一个类。
更新:
这是我所做的:
这个例子几乎实现了我想要达到的效果:http://hackingon.net/files/jquery_datepicker/range.htm 唯一的区别是所选范围的高亮显示应该发生在两个单独的日期选择器上,并且是在鼠标悬停时。
有什么建议吗?
更新:
好的,再多些细节:
在从第一个日期选择器中选择日期后,第二个日期选择器应突出显示先前选择的日期。如果您然后将鼠标悬停在先前选择的日期之后的某一天,所有介于它们之间的天数都应该突出显示添加一个类。
更新:
这是我所做的:
$("#input-service_date_leave, #input-service_date_return").datepicker({
rangeSelect: true,
beforeShow: customRange,
onSelect: customRange,
});
function customRange(input) {
if (input.id == "input-service_date_leave") {
$("#ui-datepicker-div td").die();
if (selectedDate != null) {
$('#input-service_date_return').datepicker('option', 'minDate', selectedDate).datepicker('refresh');
}
}
if (input.id == "input-service_date_return") {
$("#ui-datepicker-div td").live({
mouseenter: function() {
$(this).prevAll("td:not(.ui-datepicker-unselectable)").addClass("highlight");
},
mouseleave: function() {
$("#ui-datepicker-div td").removeClass("highlight");
}
});
var selectedDate = $("#input-service_date_leave").datepicker("getDate");
if (selectedDate != null) {
$('#input-service_date_return').datepicker('option', 'minDate', selectedDate).datepicker('refresh');
}
}
}
http://jsfiddle.net/mayko/WbWg3/1/
唯一的问题是,实时事件只会突出显示当前悬停行的td,而不是之前行的td。
有什么想法吗?