Niente, non riesco a trovare dove sia il problema, al momento ho aggirato il problema, anche se mi piacerebbe evitare, al momento ho fatto così:
Ho creato una funzione che esegue il calcoli di dimensioni, altezza da top e bottom e tutti i dati che servono
codice:
var position = function(id){
setTimeout(function(){
// Ricavo altezza elemento
var element = document.getElementById(id);
var elemHg = element.offsetHeight;
// Ricavo altezza calendario
var cal = document.getElementById("ui-datepicker-div");
var calHg = cal.offsetHeight;
if(window.innerHeight - element.getBoundingClientRect().bottom + elemHg < calHg){
// Metto sopra
var pos = element.getBoundingClientRect().top - calHg;
$('#ui-datepicker-div').css({"top":set});
}else{
// Metto sotto
var pos = element.getBoundingClientRect().top + elemHg;
}
$('#ui-datepicker-div').css({"top":pos});
}, 0);
};
poi nelle chiamate al datepicker ho aggiunto:
codice:
beforeShow: function(){
position(this.id);
}
Funzionare funziona perfettamente, ma preferirei evitare, se vi vengono idee sono ben accette