禁用和启用css转换以初始化位置

时间:2017-02-03 09:21:09

标签: javascript css css3 css-transitions

在javascript中,我想在没有过渡的情况下使用旋转来定位div,以达到动画的起始位置(使用css过渡)。 所以在这个初始位置之后,我想启用转换。

我在那里做了一个codepen:http://codepen.io/3MO/pen/ZLoKbv 似乎codepen不起作用它将在我的本地工作,window.onload不被考虑。

无论如何: - div没有任何转换属性集。 - 根据点击的数字,我改变了div。 - 之后,我想开始转换,所以我在div中添加了一个类来定义转换属性。

function onThumbnailClick(event) {
   var index = parseInt(event.target.id.split('-')[1]);

   //initialize the div position without transition :
   initPortraitPanel(index); 
   //then I "activate" the transition :
   $('.portraitDiv').addClass('active-transition'); 
   //After that I want to launch transitions...
}      

.active-transition {
      transition: 0.5s;
}

问题是,div的初始定位采用过渡属性,即使它们被设置为。

任何人都可以告诉我一个正确的方法来禁用初始定位的转换,然后激活转换,这样初始定位不会使用转换?

谢谢!

1 个答案:

答案 0 :(得分:1)

向addClass添加超时:

function onThumbnailClick(event) {
    var index = parseInt(event.target.id.split('-')[1]);

    initPortraitPanel(index);
    $('.portraitDiv').setTimeout(addClass('active-transition'), 50);
}

codepen

似乎已经回答,downvoted和删除...我不知道为什么