У меня возникла проблема с использованием jquery animate с элементами jquery ui resizable. Если я хочу анимировать ширину изменяемого размера элемента, resizeHandle (зеленый в моем примере) исчезнет во время анимации. Если я одушевляю, например, это свойство left, ручка изменения размера будет правильно отображаться.Изменить размер Ручки не видны при анимационном свойстве «ширина»
Я привел это к очень простому примеру, чтобы воспроизвести проблему.
Мой HTML выглядит следующим образом:
<div id="myDiv" class="resizable rectangle"></div>
<button type="button" id="animate">Animate Width</button><br/>
<button type="button" id="animate2">Animate Left</button>
Вот JS часть:
var widthState = 0;
var leftState = 0;
$(".resizable").resizable({
handles: "e"
});
$("#animate").click(function(target){
$(".resizable").animate({
width: widthState > 0 ? 200 : 5,
},{
complete: function(){
widthState = widthState > 0 ? 0 : 1;
}
});
});
$("#animate2").click(function(target){
$(".resizable").animate({
left: leftState > 0 ? 0 : -200,
},{
complete: function(){
leftState = leftState > 0 ? 0 : 1;
}
});
});
И, наконец, CSS:
.rectangle{
background: red;
width: 200px;
height: 200px;
}
.ui-resizable-handle{
background: green;
}
Я также привел это вместе в рабочем JSFiddle здесь:
Я не мог понять, почему это происходит. Есть ли способ решить эту проблему?