JQuery анимация не работает в тронутом событии
В следующем коде $('#slidemenu-container').animate(...)
не работает:
$(document).live('touchend', function(event, data) {
var container = $("#slidemenu-container");
var container2 = $("#bg-yellow-id");
if (container.has(event.target).length === 0 && container2.has(event.target).length === 0 && settings.katMenuVisible) {
// workaround because showHide(...) with animate isnt working
var left = '-=' + settings.listSlideWidth + 'px';
$("#show-hide-kat").css({
'background-image': "url('" + yiiBaseUrl + "/images/NAVbutton_opennav.png')"
});
$('#slidemenu-container').animate({
left: left,
}, settings.duration, function() {
});
settings.katMenuVisible = !settings.katMenuVisible;
}
});
Это работает, если я изменяю левое свойство с .css()
функция:
$(document).live('touchend', function(event, data) {
var container = $("#slidemenu-container");
var container2 = $("#bg-yellow-id");
if (container.has(event.target).length === 0 && container2.has(event.target).length === 0 && settings.katMenuVisible) {
// workaround because showHide(...) with animate isnt working
var left = '-=' + settings.listSlideWidth + 'px';
$("#show-hide-kat").css({
'background-image': "url('" + yiiBaseUrl + "/images/NAVbutton_opennav.png')"
});
container.css({
'left': left
});
settings.katMenuVisible = !settings.katMenuVisible;
}
});
В чем проблема? Я перепробовал все, но анимация все еще не работает.
Спасибо за помощь.
1 ответ
Возможно, попробуйте что-нибудь попроще, например: .animate({"left": "+=50px"}, "slow");
Кстати, я не уверен, что вы все равно пытаетесь сделать, пытаетесь заставить его переключиться влево и оживить? Заставить его появиться?