论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Javascript教程
Tag:验证,特效,入门,实例,验证,表单,特效,正则表达式,跑马灯,document,函数,代码,getElementByID,菜单,图片,视频教程

Javascript教程_这种旋转LOGO如何作

文章类别:Javascript | 发表日期:2010-5-4 9:50:01

  1. 你说的效果就是操作宽的大小及X坐标,不仔细看还真以为是在转。
    <html>
    <head>
        <title>图片旋转</title>
        <style type="text/css">
            *{padding:0px;margin:0px}
            img{width:120px;height:120px;}
            #a{position:relative;}
            #a div{width:1px;overflow:hidden;position:absolute;}
            .a{margin:50px auto;width:800px;}
            body{padding:0px 100px;}
        </style>
        <script type="text/javascript">
    function x2d(id){
        this.obj=document.getElementById(id);
        this.w=this.obj.offsetWidth;
        this.h=this.obj.offsetHeight;
        var txt="";
        var html=this.obj.innerHTML;
        this.ar=new Array();
        for(var i=0;i<this.w;i++){
            txt+="<div>"+html+"</div>";
            var xx=i-this.w/2;
            var yy=Math.acos(xx/Math.abs(xx))*180/Math.PI;
          
            this.ar[i]=[Math.abs(xx),yy];
        }
        this.obj.innerHTML=txt;
        this.txt=this.obj.getElementsByTagName("div");
        for(var i=0;i<this.w;i++){this.txt[i].scrollLeft=i;}
    this.xy();
    }
    x2d.prototype.xy=function(){
        for(var i=0;i<this.w;i++){
            if(this.ar[i][0]!==0){
                this.txt[i].style.left=(this.ar[i][0]*Math.cos(this.ar[i][1]*Math.PI/180)
    +this.w/2)+"px";
                var k=Math.sin(this.ar[i][1]*Math.PI/180);
                this.txt[i].style.zIndex=k;
                k=(300-this.ar[i][0]*k)/300*this.h;
                this.txt[i].style.height=k+"px";
                this.txt[i].getElementsByTagName("img")[0].style.height=k+"px";
                this.txt[i].style.top=(this.h-k)/2+"px";
            }else{this.txt[i].style.left=(this.w/2)+"px";}
            this.ar[i][1]+=4;
        }
    var objthis=this;
    setTimeout(function(){objthis.xy()},50);
    }
        </script>
    </head>
    <body>
    <div class="a"><span id="a"><img
    src="http://www.pcbmk.com/uploads/allimg/081108/20485790.gif"/></span></div>
    <script type="text/javascript">var xa=new x2d("a");</script>
    </body>
    </html>
视频教程列表
文章教程搜索
 
Javascript推荐教程
Javascript热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058