透明度モーションテスト

1720 ワード




    

<script>

    // 
    function getStyle(obj,name){
        if (obj.currentStyle) {
            return obj.currentStyle[name];
        } else {
            return getComputedStyle(obj,false)[name];
        }
        
    }

    // 
    function startMover(acr,sx,iTaget){
        clearInterval(acr.timer);
        acr.timer=setInterval(function(){
            var oDivSx=0;
            if (sx=='opacity') {
                oDivSx=parseFloat(getStyle(acr,sx))*100;
            } else {
                oDivSx=parseInt(getStyle(acr,sx));
            }
            var spead=0;
            spead=(iTaget-oDivSx/100)/3;
            spead=spead>0?Math.ceil(spead):Math.floor(spead);
            if (oDivSx==iTaget) {
                clearInterval(acr.timer);
            }else{
                if(sx=='opacity'){
                    acr.style.filter='alpha(opcity:'+(oDivSx+spead)+')';
                    acr.style.opacity=(oDivSx+spead)/100;
                }else{
                    acr.style[sx]=oDivSx+spead+'px';
                }
            }
        },17)
    }
    
    // 
    window.onload=function(){
        var oDiv=document.getElementById('div1');
        oDiv.onmousemove=function(){
            startMover(this,'opacity',0.3)
        }
    }
    
</script>
<style>
    #div1{
        width: 200px;
        height: 200px;
        background: green;
        opacity: 1;
        filter: alpha(opacity:1);
    }
</style>

    <div id="div1"/>


</code></pre> 
</article>
                            </div>
                        </div>