动画css开关

时间:2012-07-25 17:06:14

标签: javascript css animation

有没有办法动画这个功能? 所以当它“扩展”css之间的切换时,它会慢慢地/中速/快速地进行。

    function changeCssClass(objDivID)
    {
        if(document.getElementById(objDivID).className=='normalSize')
        {
            document.getElementById(objDivID).className = 'expandedSize';
        }
        else
        {
            document.getElementById(objDivID).className = 'normalSize';
        }
    } 

css代码:

.normalSize { width:640px; height:360px; }

.expandedSize { width:1000px; height:480px; }

1 个答案:

答案 0 :(得分:1)

这只是CSS过渡很容易做到的事情。使用其他任何东西都很可惜。这是:

   function changeCssClass() {
        if (document.getElementById('objDivID').className == 'normalSize') {
            document.getElementById('objDivID').className = 'expandedSize';
        } else {
            document.getElementById('objDivID').className = 'normalSize';
        }
    }

    document.getElementById('objDivID').onclick = function(){
        changeCssClass();
    }

和CSS:

#objDivID {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

http://jsfiddle.net/U8yZ6/

它由onclick触发,但你可以使用任何类型的触发器。