jquery 中animate的问题
1 div
2 div

例如两个div

 jQuery(function ($) {
        $("div").hide();
        $("div:first").show(1000);
        $("div").toggle(2000);
         alert($("div:visible").length);

    })

为什么alert之后会显示2 而不是显示1 我想要知道其中的原理

2个回答

show,toggle都是会设置显示然后再设置高度实现动画效果,所以2个都是可见的

showbo
支付宝加好友偷能量挖 回复飞翔的小野鸭: 是同步啊,不是说了,show,toggle会先设置显示才会执行动画(计时器异步执行),那不是2个都显示了
大约 2 年之前 回复
u012470804
飞翔的小野鸭 js不是同步执行的吗,不应该是show完再执行toggle, 最后执行alert?
大约 2 年之前 回复

在jQuery中,visibility: hidden;和opacity: 0;都被视作可见的,因为它们在页面上占据了相应的物理空间。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!