写一个焦点图demo,css3动画完成之后要把它隐藏掉,这里会用到css3的事件,之前没有接触过,结果查了一下发现这是一片新天地啊,并且里面还有好多坑,好比重复动画屡次触发什么的。anyway,我仍是先抓住有用的吧!任何能为我所用的都是有用的,任何不能为我所用的都是没用的,任何我能学会掌握的都是有用的,我学不会的,再屌也没用!css
//捕捉webkitAnimationEnd事件 element.addEventListener('webkitAnimationEnd', end, false); //捕捉webkitTransitionEnd事件 element.addEventListener('webkitTransitionEnd', end, false); function end(){ //code }
没什么难以理解的,看代码就能明白。css3
可是这里有个参数有小坑,下面是我本身写的end方法web
function transitionEnd(e){ if(e.propertyName=="-webkit-transform"){ this.parentNode.style.visibility="hidden"; } }
就是那个event参数,我怎么都进不到那个if分支里,究其缘由,我把e打印出来看一下,并无"-webkit-transform"这样一个propertyName,只有一个叫"transform"的,因此我就改为了下面这样。css3动画
function transitionEnd(e){ if(e.propertyName=="-webkit-transform" || e.propertyName=="transform"){ this.parentNode.style.visibility="hidden"; } }
反正坑挺多的,随时console.log()吧!动画