Javascript jquery在动画之后做些什么
在div上执行mouseenter时,会执行以下代码:Javascript jquery在动画之后做些什么,javascript,jquery,Javascript,Jquery,在div上执行mouseenter时,会执行以下代码: $('.expandable').mouseenter(function () { $(this).find('.links').css('visibility', 'hidden'); $(this).find('.links').show('fast', function () { $(this).find('.links').css('visibility', 'visible');
$('.expandable').mouseenter(function () {
$(this).find('.links').css('visibility', 'hidden');
$(this).find('.links').show('fast', function () {
$(this).find('.links').css('visibility', 'visible');
alert("The paragraph is now visible");
});
}
通常$(this).find('.links').eq(0).css('background-color','visible')代码>应该在动画完成后执行,但我在执行mouseenter和mouseout时查看开发工具(chrome),但是css没有改变。。。但动画完成后,我会收到警报
有人能帮我吗
编辑,解决方案:
$('.expandable').mouseenter(function () {
$(this).find('.links').css('visibility', 'hidden');
$(this).find('.links').show('fast', function () {
$(this).css('visibility', 'visible');
alert("The paragraph is now visible");
});
}
.show()
切换显示
和不透明度
,但不切换可见性
将不透明度
设置为0将具有与设置可见性
设置为隐藏
相同的视觉效果。所以我建议你这样做:
$(".divname").css('opacity', '0');
// In case you have no code in between those two jQuery calls, you should use chaining
$(".divname").show('fast', function () {
$(".divname").css('visibility', 'visible');
alert("The paragraph is now hidden");
});
我没有看到$(this).find('.links').eq(0).css('background-color','visible')代码>在您的代码中。您可以在回调中使用此
,该回调将指向正在设置动画的元素。试试这个
$('.expandable').mouseenter(function () {
$(".divname").css('visibility', 'hidden');
$(".divname").fadeIn('fast', function () {
$(this).css('visibility', 'visible');
alert("The paragraph is now visible");
});
}
您应该使用css属性显示。或者funktion.hide()
方法1:
$(".divname").css('display', 'none');
$(".divname").show('fast', function () {
$(".divname").hide("fast");
alert("The paragraph is now hidden");
});
方法2:
$(".divname").hide("fast");
$(".divname").show('fast', function () {
$(".divname").hide("fast");
alert("The paragraph is now hidden");
});
jquery.show不处理可见性,它处理display属性。通常,您不希望将显示和可见性混为一谈。无论如何,您要查找的是不透明度=0(与可见性=隐藏具有相同的效果)
我认为你可能想做的是:
$('.expandable').mouseenter(function () {
$(".divname").
css('opacity', 0).
animate(
{opacity:1},
1000,
"linear",
function(){
alert("the paragraph is now visible");
}
);
});
希望我能帮忙你能告诉我们如何触发mouseenter/mouseout事件吗?获取元素的速度更快,比如$('.divname').css('hello')。show('fast')
@aschuler是的,我更新了我的问题WTF.css('background-color','visible')
?@dotweb请刷新页面