【HTML CSS JS 实现QQ2009界面——附源代码】

oDropDown=oDiv.getElementsByTagName(‘ul’)[0];

aLi=oDropDown.getElementsByTagName(‘li’);

for(i=0;i<aDiv.length;i++)

{

switch(aDiv[i].className)

{

case ‘link’:

oDropDownBtn=aDiv[i];

break;

}

}

oImg=aLi[0].getElementsByTagName(‘img’)[0];

oTmpParent=oImg.parentNode;

oTmpContainer.appendChild(oImg);

oImgInitSize.x=oImg.offsetWidth;

oImgInitSize.y=oImg.offsetHeight;

oTmpParent.appendChild(oImg);

oTmpContainer.parentNode.removeChild(oTmpContainer);

oDropDownBtn.οnmοusedοwn=function (ev)

{

if(this.className==‘active’)

{

hideDropDown(ev);

oDropDownBtn.className=‘hover’;

}

else

{

showDropDown(ev);

}

};

oDropDownBtn.οnmοuseοver=function ()

{

if(oDropDownBtn.className!=‘active’)

{

this.className=‘hover’;

}

};

oDropDownBtn.οnmοuseοut=function ()

{

if(oDropDownBtn.className!=‘active’)

{

this.className=‘link’;

}

};

document.body.οnmοusedοwn=hideDropDown;

for(i=0;i<aLi.length;i++)

{

aLi[i].miaovIndex=i;

aLi[i].οnmοuseοver=doScale;

aLi[i].οnmοusedοwn=function ()

{

oImgTitle.src=this.getElementsByTagName(‘img’)[0].src;

oInput.value=this.getElementsByTagName(‘span’)[1].innerHTML;

};

aTimer[i]=null;

aScale[i]=10;

}

aScale[1]=16;

aScale[2]=20;

aScale[3]=16;

};

function showDropDown(ev)

{

var oEvent=window.event || ev;

oDropDown.style.display=‘block’;

oDropDownBtn.className=‘active’;

oEvent.cancelBubble=true;

}

function hideDropDown(ev)

{

var oEvent=window.event || ev;

oDropDown.style.display=‘none’;

oDropDownBtn.className=‘link’;

oEvent.cancelBubble=true;

}

function doScale()

{

var iScale=0;

var iPading=0;

for(i=0;i<aLi.length;i++)

{

switch(Math.abs(i-this.miaovIndex))

{

case 1:

iScale=16;

iPading=6;

break;

case 0:

iScale=22;

iPading=10;

break;

default:

iScale=10;

iPading=4;

}

aLi[i].className=‘’;

aLi[i].getElementsByTagName(‘span’)[0].style.paddingTop=iPading+‘px’;

setScale(i, iScale);

}

this.className=‘bg’;

}

function setScale(index, iScale)

{

if(aTimer[index])

{

clearInterval(aTimer[index]);

}

aTimer[index]=setInterval(“setScaleInner(”+index+“, “+iScale+”)”, 30);

}

function setScaleInner(index, iTarget)

{

var iScale=aScale[index];

var oImg=aLi[index].getElementsByTagName(‘img’)[0];

if(iScale==iTarget)

{

clearInterval(aTimer[index]);

aTimer[index]=null;

}

else

{

if(iScale>iTarget)

{

iScale–;

}

else

{

iScale++;

}

oImg.style.width=oImgInitSize.x*iScale/10+‘px’;

oImg.style.height=oImgInitSize.y*iScale/10+‘px’;

aScale[index]=iScale;

}

}

style.css

@charset “utf-8”;

*{padding:0;margin:0;list-style-type:none;}

body{background:#3a6ea5 url(images/desktop.png) no-repeat 0px 10px;}

#qq{width:340px;height:250px;background:url(images/bg.png);position:absolute;top:50%;left:50%;margin:-125px 0 0 -170px;}

#qq .input{position:absolute;top:110px;left:67px;}

#qq .input .pic{float:left;}

#qq .input p{float:left;padding-left:3px;}

#qq .input .link, #qq .input .active, #qq .input .hover{width:23px;height:22px;cursor:pointer ;float:left;position:relative;top:-1px;right:-1px;}

#qq .input .link{background:url(images/btn.gif) no-repeat 0px -22px;}

#qq .input .active{background:url(images/btn.gif) no-repeat 0px 0px;}

#qq .input .hover{background:url(images/btn.gif) no-repeat 0px -44px;}

#qq ul{width:182px;padding:1px;background:#fff;border:1px solid #0093d1;position:absolute;top:133px;left:65px;display:none;}

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
894012)]

[外链图片转存中…(img-pwSIyyNN-1715038894012)]

[外链图片转存中…(img-a9gPSVNz-1715038894012)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 8
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值