实现这个效果时,采用 选择器.animate({ left:"100,opacity:1"}).css("display:block"); 个人理解,在执行这个的时候,应该是直接执行 animate() ,结束后再执行 css()。可这样的话,变化的过程应该是 渐变到透明度为1 { 这个过程中,由于还没block,应该是隐藏的 },接着突然block显示出来。然而,实际上,却不是这样。这两个似乎是同时进行一样。我尝试着,将css()提前,却出现的是: 直接blcok显示,后面的渐变效果就没出现了。是由于animate() 有什么特殊性吗?麻烦各位帮忙解疑下,尽量简单明白点,本人菜鸟来的,对专业术语不大通!!在此多谢了
3 回答
扬帆大鱼
TA贡献1799条经验 获得超9个赞
我不知道是要它们同时进行还是先移动过去再隐藏,2个;
第一个是先移动后隐藏
$(function(){
$("div").animate({ left:"100",opacity:1},1000,function(){
$(this).css({display:"none"})
})
})
第2个是移动过去的同时隐藏
$(function(){
$("div").animate({ left:"100",opacity:1},1000)
})
js和jq的主要区别
js是基础,jq是建立在js的基础上,用js开发出来的一个框架,里面实现和很多常用的功能和效果。只要了解其中方法的含义,我们使用的时候直接调用就可以了。
呼如林
TA贡献1798条经验 获得超3个赞
因为animate有个duration,默认是400ms。
如下的写法就是你要的效果了
.animate({ left:"100,opacity:1"},400,function(){
$(this).css("display:block")
});
- 3 回答
- 0 关注
- 505 浏览
添加回答
举报
0/150
提交
取消