jQuery Date picker not moving with page scroll

前端 未结 5 1113
陌清茗
陌清茗 2020-12-06 11:24

I am using the standard jQuery UI datepicker ,However when i scroll the page the date picker remains fixed . Any ideas how to solve this ?

http://jsfiddle.net/jbK6a/

5条回答
  •  暖寄归人
    2020-12-06 11:44

    To solve this problem in jQuery UI 1.11.4 I added a .bind() event to the end of the datepicker instantiation:

    $("*selector*").datepicker({
      *settings*
    }).bind('click',function () {
      $("#ui-datepicker-div").appendTo("*other-selector*");
    });
    

    In my case, the "other-selector" was $(this).closest('the-date-input-parent'). This picks up the single #ui-datepicker-div box (which jQuery UI places at the end of the DOM) and moves it to a location somewhere else within the document. This can be done for multiple datepickers on the same page.

    The other-selector should have position: relative; set so that the absolutely positioned #ui-datepicker-div becomes positioned relative to the new parent. Once so, it scrolls just fine.

    This solution was the easiest fix to this problem (though it took a lot of time and searching to come to this conclusion) and allowed the datepicker to work correctly on mobile devices and tablets where it would otherwise be unusable.

提交回复
热议问题