亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

JS關(guān)鍵字球狀旋轉(zhuǎn)效果的實(shí)例代碼

2019-11-20 21:33:40
字體:
供稿:網(wǎng)友

有時(shí)上網(wǎng)查資料,看到別人的博客上有關(guān)鍵字旋轉(zhuǎn)的效果,覺得蠻不錯(cuò)的。于是網(wǎng)上搜索了一下它的實(shí)現(xiàn),好吧,自己動(dòng)手寫寫。

HTML:

復(fù)制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<link rel="stylesheet" href="css/style.css" />
<script type="text/javascript" src="js/lrtk.js"></script>
</head>
<body>
<!-- 代碼開始 -->
<div id="div1">
<a >Asp.net webform</a>
<a >Asp.net mvc</a>
<a >EF</a>
<a >Castle</a>
<a >Spring.net</a>
<a >NHibernate</a>
<a >WCF</a>
<a >WPF</a>
<a >AOP</a>
<a >IoC</a>
<a >SQL</a>
<a >Javascript</a>
<a >Jquery</a>
<a >KendoUI</a>
</div>
</body>
</html>

CSS:
復(fù)制代碼 代碼如下:

 #div1{height:400px;width:450px; position:relative; margin:10px auto;}
 #div1 a{position:absolute;top:0px;left:0px;font-weight:bold;padding:3px 6px; color:black; text-decoration: none;}
 #div1 a:hover{border:1px solid #eee;background:#ccc;border-radius:5px;}

既然是關(guān)鍵字,我覺得給他們加上不同的顏色才夠酷。初始化一個(gè)數(shù)組存放顏色值,然后再隨機(jī)分配給各個(gè)標(biāo)簽。
復(fù)制代碼 代碼如下:

var colors = ["#FF60AF","#9F35FF","#FF2D2D","#6C6C6C","#003D79","#00AEAE","#019858"];
         var rand = Math.ceil(Math.random()*6);
         aA[i].style.color=colors[rand];

JS:
復(fù)制代碼 代碼如下:

var radius = 100;
var dtr = Math.PI/180;
var d=300;

var mcList = [];
var active = false;
var lasta = 1;
var lastb = 1;
var distr = true;
var tspeed=2;
var size=250;

var mouseX=0;
var mouseY=0;

var howElliptical=1;

var aA=null;
var oDiv=null;

window.onload=function ()
{
    var i=0;
    var oTag=null;

    oDiv=document.getElementById('div1');

    aA=oDiv.getElementsByTagName('a');

    for(i=0;i<aA.length;i++)
    {

        var colors = ["#FF60AF","#9F35FF","#FF2D2D","#6C6C6C","#003D79","#00AEAE","#019858"];
        var rand = Math.ceil(Math.random()*6);
        aA[i].style.color=colors[rand];

        oTag={};

        oTag.offsetWidth=aA[i].offsetWidth;
        oTag.offsetHeight=aA[i].offsetHeight;

        mcList.push(oTag);
    }

    sineCosine( 0,0,0 );

    positionAll();

    oDiv.onmouseover=function ()
    {
        active=true;
    };

    oDiv.onmouseout=function ()
    {
        active=false;
    };

    oDiv.onmousemove=function (ev)
    {
        var oEvent=window.event || ev;

        mouseX=oEvent.clientX-(oDiv.offsetLeft+oDiv.offsetWidth/2);
        mouseY=oEvent.clientY-(oDiv.offsetTop+oDiv.offsetHeight/2);

        mouseX/=5;
        mouseY/=5;
    };

    setInterval(update, 10);
};

function update()
{
    var a;
    var b;

    if(active)
    {
        a = (-Math.min( Math.max( -mouseY, -size ), size ) / radius ) * tspeed;
        b = (Math.min( Math.max( -mouseX, -size ), size ) / radius ) * tspeed;
    }
    else
    {
        a = lasta * 0.98;
        b = lastb * 0.98;
    }

    lasta=a;
    lastb=b;

    if(Math.abs(a)<=0.01 && Math.abs(b)<=0.01)
    {
        return;
    }

    var c=0;
    sineCosine(a,b,c);
    for(var j=0;j<mcList.length;j++)
    {
        var rx1=mcList[j].cx;
        var ry1=mcList[j].cy*ca+mcList[j].cz*(-sa);
        var rz1=mcList[j].cy*sa+mcList[j].cz*ca;

        var rx2=rx1*cb+rz1*sb;
        var ry2=ry1;
        var rz2=rx1*(-sb)+rz1*cb;

        var rx3=rx2*cc+ry2*(-sc);
        var ry3=rx2*sc+ry2*cc;
        var rz3=rz2;

        mcList[j].cx=rx3;
        mcList[j].cy=ry3;
        mcList[j].cz=rz3;

        per=d/(d+rz3);

        mcList[j].x=(howElliptical*rx3*per)-(howElliptical*2);
        mcList[j].y=ry3*per;
        mcList[j].scale=per;
        mcList[j].alpha=per;

        mcList[j].alpha=(mcList[j].alpha-0.6)*(10/6);
    }

    doPosition();
    depthSort();
}

function depthSort()
{
    var i=0;
    var aTmp=[];

    for(i=0;i<aA.length;i++)
    {
        aTmp.push(aA[i]);
    }

    aTmp.sort
    (
        function (vItem1, vItem2)
        {
            if(vItem1.cz>vItem2.cz)
            {
                return -1;
            }
            else if(vItem1.cz<vItem2.cz)
            {
                return 1;
            }
            else
            {
                return 0;
            }
        }
    );

    for(i=0;i<aTmp.length;i++)
    {
        aTmp[i].style.zIndex=i;
    }
}

function positionAll()
{
    var phi=0;
    var theta=0;
    var max=mcList.length;
    var i=0;

    var aTmp=[];
    var oFragment=document.createDocumentFragment();

    //隨機(jī)排序
    for(i=0;i<aA.length;i++)
    {
        aTmp.push(aA[i]);
    }

    aTmp.sort
    (
        function ()
        {
            return Math.random()<0.5?1:-1;
        }
    );

    for(i=0;i<aTmp.length;i++)
    {
        oFragment.appendChild(aTmp[i]);
    }

    oDiv.appendChild(oFragment);

    for( var i=1; i<max+1; i++){
        if( distr )
        {
            phi = Math.acos(-1+(2*i-1)/max);
            theta = Math.sqrt(max*Math.PI)*phi;
        }
        else
        {
            phi = Math.random()*(Math.PI);
            theta = Math.random()*(2*Math.PI);
        }
        //坐標(biāo)變換
        mcList[i-1].cx = radius * Math.cos(theta)*Math.sin(phi);
        mcList[i-1].cy = radius * Math.sin(theta)*Math.sin(phi);
        mcList[i-1].cz = radius * Math.cos(phi);

        aA[i-1].style.left=mcList[i-1].cx+oDiv.offsetWidth/2-mcList[i-1].offsetWidth/2+'px';
        aA[i-1].style.top=mcList[i-1].cy+oDiv.offsetHeight/2-mcList[i-1].offsetHeight/2+'px';
    }
}

function doPosition()
{
    var l=oDiv.offsetWidth/2;
    var t=oDiv.offsetHeight/2;
    for(var i=0;i<mcList.length;i++)
    {
        aA[i].style.left=mcList[i].cx+l-mcList[i].offsetWidth/2+'px';
        aA[i].style.top=mcList[i].cy+t-mcList[i].offsetHeight/2+'px';

        aA[i].style.fontSize=Math.ceil(12*mcList[i].scale/2)+8+'px';

        aA[i].style.filter="alpha(opacity="+100*mcList[i].alpha+")";
        aA[i].style.opacity=mcList[i].alpha;
    }
}

function sineCosine( a, b, c)
{
    sa = Math.sin(a * dtr);
    ca = Math.cos(a * dtr);
    sb = Math.sin(b * dtr);
    cb = Math.cos(b * dtr);
    sc = Math.sin(c * dtr);
    cc = Math.cos(c * dtr);
}


最后看下效果:

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
欧美高清视频www夜色资源网| 国产精品免费福利| 91麻豆精品国产91久久久资源速度| 亚洲国产天堂久久综合网| 91精品国产沙发| 欧美精品日韩一本| 色视频免费在线| 国产欧美视频在线观看| 亚洲综合999| 国产精品v欧美精品v日本精品动漫| 91九色蝌蚪成人| 亚洲青青久久| 在线观看黄色片| 激情av在线播放| 精品亚洲男同gayvideo网站| 妖精视频一区二区三区免费观看| 亚洲久久久久久久久久| 午夜一区二区三区四区| 蜜臀av在线播放| 香蕉视频在线网址| 亚洲爱情岛论坛永久| 欧美一区二区女人| 免费av网页| 亚洲日本在线看| 精品999网站| 欧美色图亚洲视频| 国产精品一区二区免费在线观看| 成人综合色站| 亚洲爆乳无码专区| 日韩精品乱码av一区二区| 一本一本久久a久久精品综合小说| 国产成人综合欧美精品久久| 日韩av手机在线看| 免费观看四虎精品成人| 欧美激情三级| 日本暖暖在线视频| www.激情成人| 夜夜嗨一区二区三区| 中文字幕一区免费在线观看| 久久精品国产免费| www.5588.com毛片| 暖暖视频在线免费观看| 欧美深性狂猛ⅹxxx深喉| 99视频国产精品免费观看a| 1区1区3区4区产品乱码芒果精品| 日韩视频免费观看高清完整版| 欧美视频一区二区三区| 亚洲欧美一区二区三区国产精品| 亚洲黄色影片| 亚洲成人一区二区| 九色成人免费视频| 国产精品一区二区在线播放| 国产三级在线播放| 亚洲高清精品视频| 久一区二区三区| 先锋音影av资源中文网| 欧美日韩精品国产| 欧美精品一区二区三区蜜臀| 一二三不卡视频| 深田えいみ中文字幕99久久| 亚洲视频在线观看不卡| 久久99精品久久久久子伦| 精品国产乱码久久久久酒店| 美腿丝袜亚洲一区| 午夜精品电影在线观看| 国产一区二区三区在线播放免费观看| 成人性生交大片免费看无遮挡aⅴ| 国产精品igao激情视频| 老鸭窝毛片一区二区三区| 欧美日本在线视频中文字字幕| 日韩午夜av一区| 免费无码不卡视频在线观看| 国产chinasex对白videos麻豆| 国产精品免费无遮挡无码永久视频| 久久99国产精品自在自在app| 欧洲美女女同性互添| 久久亚洲影视婷婷| 国精产品乱码一区一区三区四区| 91精品国产丝袜白色高跟鞋| 欧美自拍大量在线观看| 日韩精品一区二区av| www.就去干.com| 国产精品亚洲αv天堂无码| 欧美日韩国产高清一区二区三区| 岛国av免费观看| 亚洲日本视频在线| 国产一二三区在线观看| 一区二区三区.www| 国产精品77777竹菊影视小说| 国产精品―色哟哟| 91亚洲va在线va天堂va国| 日本一区二区三区dvd视频在线| 日本少妇一区二区| 丝袜亚洲另类欧美综合| 日韩精品一区二区三区四区五区| 久久99最新地址| 今天免费高清在线观看国语| 理论片在线不卡免费观看| 久久久五月婷婷| 在线日本高清免费不卡| 日本欧美黄色| 亚洲色图欧美在线| 欧美成人免费视频| 91蜜臀精品国产自偷在线| 成人在线资源网址| 亚洲一区二区三区中文字幕在线| 亚洲毛片网站| 欧美一区2区视频在线观看| 日本不卡中文字幕| 国产变态拳头交视频一区二区| 999在线观看免费大全电视剧| 欧美性感美女h网站在线观看免费| 黄色av网站在线免费观看| 91精品婷婷国产综合久久| 一区二区三区四区视频精品免费| 熟女高潮一区二区三区| 国产一区二区伦理片| 欧美一级视频一区二区| 成人高清在线观看视频| 精品亚洲成a人| 在线不卡免费视频| 久久99久久久久久久噜噜| 欧美videofree性高清杂交| 亚洲色图首页| 人人爱人人干婷婷丁香亚洲| 精品国产免费人成在线观看| 久久精品国产亚洲AV无码男同| 在线精品自拍| 久久综合入口| 色欧美乱欧美15图片| 国产一区二区视频在线看| 欧美精品七区| 久久久久久久综合| 国产成人精品福利| 欧美一区三区三区高中清蜜桃| 91美女在线免费观看| 成人在线免费播放视频| 99久久久久免费精品国产| 麻豆一区区三区四区产品精品蜜桃| 日韩pacopacomama| 国产一区二区三区黄| 精品国产91久久久久久老师| 国产精品传媒| 国产成人禁片免费观看视频| 三年片免费观看大全| 国产一区二区三区高清视频| 人妻换人妻a片爽麻豆| 欧美性猛交xxxx免费看漫画| 美女的奶胸大爽爽大片| 欧美军同video69视频| 亚洲av综合色区| 亚洲精品久久久久久久久久久| 中文字幕久久av| 色欲AV无码精品一区二区久久| 一区二区三区国产视频| 深夜福利免费在线观看| 一区二区三区免费观看视频| 久久久久久久久久网站| av噜噜色噜噜久久| 鲁丝一区二区三区| 亚洲理论在线观看| 黄色激情视频网址| 91av视频导航| 一区二区三区日韩欧美| 亚洲精品毛片一区二区三区| 欧美中文字幕视频在线观看| 在线播放国产精品二区一二区四区| 国产性色av一区二区| 密臀av在线播放| 亚洲国产精品久久久久婷婷老年| 国产精品久久久久久久久久辛辛| 九九久久精品视频| 亚洲小说区图片| 日韩欧美高清视频| 国产91精品黑色丝袜高跟鞋| 无码日本精品xxxxxxxxx| 国产女人伦码一区二区三区不卡| 亚洲五月婷婷| 日本aⅴ精品一区二区三区| 成人午夜在线影院| 成人av资源在线播放| 欧美专区福利免费| 欧美色图另类图片| 天天做天天爱综合| 久久成人在线| 国产精品中文有码| 超碰97国产精品人人cao| 91精品尤物| 亚洲欧洲闷骚av少妇影院| 久久精品视频7| 91精品国产一区二区三区香蕉| 亚洲四虎av| 久久99精品国产自在现线| 亚洲欧美日韩高清| 欧美国产一区在线| 91蝌蚪porny| 高清精品xnxxcom| 国产一区二区三区视频免费| 毛茸茸多毛bbb毛多视频| 欧美激情视频一区二区三区不卡| 欧美大片一区| 第四色在线视频| heyzo一本久久综合| 欧美日韩在线第一页| 国产l精品国产亚洲区在线观看| 超碰在线97免费| 成人久久久久久久| 影视先锋久久| 国产亚洲高清视频| 91精品欧美久久久久久动漫| 国产视频在线观看一区| 少妇人妻丰满做爰xxx| 国产精品成人一区二区艾草| 亚洲高清毛片一区二区| 国产精品第108页| 国产秀色在线www免费观看| 亚洲精品国产精品自产a区红杏吧| 成人h动漫精品一区二区下载| 亚洲韩国欧洲国产日产av| 成人a在线视频免费观看| 亚洲欧美黄色片| sihu成人| xxxx性欧美| 99国产精品久久久久99打野战| 欧美国产一二三区| 国产欧美一区二区三区国产幕精品| 综合久久一区二区三区| 蜜臀av在线播放一区二区三区| 亚洲精品成人| 日韩电影免费观看在线观看| 国产精伦一区二区三区| 午夜肉伦伦影院| 亚洲欧美www| 久久中文字幕在线观看| 国产乱淫av一区二区三区| jizzjizzjizz亚洲女| 亚洲aa在线观看| 国产福利精品在线| 女女百合国产免费网站| 在线成人精品视频| 欧美一区二区视频免费观看| 9.1人成人免费视频网站| 久久亚洲精品毛片| 欧美裸体一区二区三区| 久草中文在线视频| 久久99深爱久久99精品| 免费在线视频一区| 精品日韩中文字幕| 狠狠躁少妇一区二区三区| 欧美激情亚洲激情| 国产精品久线观看视频| 最近2019中文字幕大全第二页| 国产九九在线视频| 狠狠躁夜夜躁人人爽天天天天97| 久久视频在线免费观看| 三年片免费观看大全| 最新日韩av在线| 欧美日韩国产欧美日美国产精品| 一区二区视频在线免费| 91国在线视频| 国产精品进线69影院| 无码成人精品区在线观看| 91麻豆精品国产91久久久更新资源速度超快| 日韩在线第二页| 欧美一区二区在线不卡| 青青操在线观看| 在线观看欧美| 国产精品九九九九九| 日本道色综合久久影院| 国产亚洲欧美日韩俺去了| 理论片在线观看理伦片| 在线观看免费黄色片| 在线观看区一区二| 亚洲午夜91| jizzjizz丝袜老师| 亚洲欧美高清视频| 精品视频1区2区3区| 99视频日韩| 亚洲欧美日韩在线不卡| 久久夜色精品亚洲噜噜国产mv| 老司机午夜精品视频| 国产无遮挡在线视频免费观看| 鲁丝一区二区三区| 久久精品97| 国产黄色免费在线观看| 日韩美女视频免费在线观看| 国产精品久久久久久久小唯西川| 久久精品视频1| 里番全彩acg☆无翼乌全彩3d| 黄色欧美视频| 91精品国产91久久久久| 亚洲国产美女精品久久久久∴| 久久性色av| 特色特色大片在线| 国产精品乱码一区二区三区| 国产一区二区三区精品久久久| 欧美日韩免费在线视频| 亚洲高清电影| 婷婷色在线资源| 午夜欧美精品久久久久久久| 毛片在线免费| 亚洲看片免费| 免费看成人哺乳视频网站| 污片在线观看一区二区| 国产精品视频久久久久久久| 色综合老司机第九色激情| 久久久久人妻精品一区三寸| 国产精品18久久久久久久久久久久| 国产精品一区二区三区乱码| 日本www视频在线观看| 欧美野外wwwxxx| 久久免费国产视频| 国产精品午夜国产小视频| 色成人免费网站| 男男gay无套免费视频欧美| 老牛国产精品一区的观看方式| xxxx欧美18另类的高清| 黑人中文字幕一区二区三区| 亚洲美女在线一区| 久久小说免费下载| 在线观看日韩精品视频| 天堂8在线天堂资源bt| 午夜欧美2019年伦理| av网站中文字幕| 91麻豆高清视频| 国产精品v欧美精品v日韩| 久久精品第九区免费观看| 日韩大片免费在线观看|