datepicker onmouseenter消息,用于禁用日期

时间:2012-04-08 22:02:30

标签: jquery events datepicker mouseenter

尝试在datepicker中向用户提供有关disabledDays的一些信息。我希望理想情况下有一个小盒子显示日期,当盘旋时提供信息。如果不可能这样的事情会发生,但我无法让事件在mouseout上停止。不仅如此,尽管这段代码将文本放在日期选择器的外围,在第一个月之后和之后的月份之前的灰色区域中。

<p class="pickdate">
<label for="pickDate"/>
<input type="text" class="pickDate"/></p>

$(function() {
$("#pickDate").datepicker();
$(".ui-state-disabled").live("mouseover", function() {
$("pickdate").text($(this).text('n/a'));
});
});

1 个答案:

答案 0 :(得分:0)

您是否尝试过绑定mouseout事件?

$(".ui-state-disabled").on('mouseout', function() {
  $("pickdate").hide()
  //or whoever you want to hide it
}

调试: 如果没有发生任何事情,请插入一些日志消息:

$(".ui-state-disabled").on('mouseout', function() {
  console.log("mouseout event fired! YEHA!");
  //or alert("mouseout event fired! YEHA");
  $("pickdate").hide()
  //or whoever you want to hide it
}

如果显示的消息可能hide()将无法处理您的选择日期。虽然奇怪但我不知道隐藏它究竟是什么意思。随意执行任何其他技巧而不是给定的代码。

如果日志消息或警报完全没有出现,则可能会触发mouseout事件。您可以通过将其绑定到空测试div来测试此行为。只是为了摆脱任何干扰。检查您的浏览器是否支持此元素类型。

您使用的是哪个版本的jQuery?我看到您执行了live(),从版本1.7开始不推荐使用on()替换。

(在此次修改之前,我还错误地使用了bind()而不是on()。更糟糕的是。也许只是再次尝试更正的代码。)