更改datepicker月后,Jquery工具提示ON事件未触发

时间:2013-03-04 13:33:40

标签: javascript jquery jquery-ui events

我已经在jquery datepicker插件中添加了一些基本的工具提示,但是在我更改月份之后,事件不再绑定到他们的选择器。如何在月改变时重新引导这些事件?

我正在使用的缩减版本如下。

<script>

$(function() {
    $("#scene").datepicker();
    var evtd = { 
        March312013: {title: "Ladies Night"}, 
        March302013: {title: "Lilly Allen Tribute Band"}
    }

    $(".ui-state-default").on("mouseenter", function(e) {
        var month = $(".ui-datepicker-month").text();
        var year = $(".ui-datepicker-year").text();
        var day = $(this).text();
        ix = month + day + year;
        if(typeof(evtd[ix])!="undefined")
        {
            var html = '<h5>'+evtd[ix]["title"]+'</h5>';
            var eleft = $(this).position().left;
            var etop = $(this).position().top;
            $("#tt").html(html).css({
                left:  Math.max(eleft-($(this).width()/2),0),
                top:   Math.max(etop+$(this).height()+7,0)
            }).show();
        }
    }).mouseleave(function(){
        $("#tt").hide();
    });
});

</script>
<style>
.nm{
    margin:0;
}

#tt{
    max-width:250px;
    position:absolute;
    border:1px solid black;
    background-color:#E9EAEE;
    padding:8px;
    display:none;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;
}
</style>

<div id="scene">MobeScene Events</div>
<div id="tt"></div>

1 个答案:

答案 0 :(得分:1)

尝试像这样绑定你的事件:

$(document).on("mouseenter",".ui-state-default",function(e){
   //Your stuff
});

有关详细说明,请参阅this answer