万能JS运动框架



JS运动函数 move.js

function getStyle(obj, attr) {
    if (obj.getcurrentStyle) {
        return obj.currentStyle[attr];
    }
    else {
        return getComputedStyle(obj, false)[attr];
    }
}
//完美运动框架
//startMove(obj, {attr1:itarget1,attr2:itarget2},fn);

fn()为回调函数,在运动结束之后执行fn,fn可以为另一个startMove
function startMove(obj, json, fn) {
   
    clearInterval(obj.timer);
    obj.timer = setInterval(function () {
        var flat = true; //是否所有的都到达目标值的标识,也是运动是否结束的标识。
        for (var attr in json) {
            //获取当前的值
            var icur = 0;
            if (attr == 'opacity') {
                icur = Math.round((getStyle(obj, attr)) * 100);
            }
            else {
                icur = parseInt(getStyle(obj, attr));
            }
            //计算速度
            var speed = (json[attr] - icur) / 8;
            speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
            if (icur != json[attr]) {
                flag = false;//如果不是所有的都到达目标值,运动不结束。
            }
            if (attr == 'opacity') {
                obj.style.filter = 'alpha(opacity:' + (icur + speed) + ')';
                obj.style.opacity = (icur + speed) / 100;
            }
            else {
                obj.style[attr] = icur + speed + 'px';
            }
        }
        if (flag) {
            clearInterval(obj.timer);
            if (fn) {
                fn();
            }
        }
    }, 30);
}

html中应用

<script src="Scripts/move.js" type="text/javascript"></script>
    <script type="text/javascript">
        window.onload = function () {
            var Li = document.getElementById("li1");
            Li.onmouseover = function () {
                startMove(Li, { width: 400, height: 200 });
            };
            Li.onmouseout = function () {
                startMove(Li, { width: 200, height: 100 });
            };
        };
    </script>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity是一款功能强大的跨平台游戏引擎和开发工具,被称为"万能框架"。Unity作为一款强大的游戏开发引擎,具有以下几个优点。 首先,Unity提供了丰富的开发工具和强大的编辑器,使得开发者能够轻松创建各种类型的游戏。无论是2D还是3D游戏,无论是移动设备还是PC平台,Unity都能提供全面的支持和灵活的开发方式。开发者可以利用Unity的编辑器进行游戏场景的创建和设计,进行角色动画的制作,进行游戏逻辑的编写,以及进行粒子特效的制作等等。Unity的开发工具和编辑器提供了直观、易用的界面,使得开发者可以快速上手,提高开发效率。 其次,Unity是一个跨平台的游戏引擎,支持多种平台的游戏开发和发布。开发者可以使用Unity开发一次,然后将游戏轻松地发布到不同的平台,比如iOS、Android、Windows、MacOS、Web等等。这大大减少了开发者的工作量和开发成本,提高了游戏开发的效率。 此外,Unity还拥有大量的资源和社区支持。Unity的官方网站上有各种教程、示例和文档,以及活跃的开发者社区。开发者可以在社区中学习和交流,获取技术支持和解决问题。此外,Unity还有丰富的插件和资源商店,提供了各种可定制和扩展引擎功能的工具和资源。 综上所述,Unity作为一款强大的游戏开发引擎和开发工具,具有丰富的功能和优秀的跨平台支持,能够提高开发效率,降低开发成本,是一种"万能框架",适用于各种类型和规模的游戏开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值