js实现仿QQ秀换装效果的方法


Posted in Javascript onMarch 04, 2015

本文实例讲述了js实现仿QQ秀换装效果的方法。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="www.w3.org/1999/xhtml">

<head>

<title>仿QQ秀换装效果</title>

<meta http-equiv="content-Type" content="text/html;charset=gb2312">

<!--把下面代码加到<head>与</head>之间-->

<style>

#cs img{cursor:hand}

</style>

<base href="http://www.zzsky.cn/effect/images/qqshow/">

</head>

<body>

<!--把下面代码加到<body>与</body>之间-->

<!-- 在要显示形象预览的地方放置以下这句代码 -->

<div id="bodyshow" style="border:1px solid #000000;padding:0;POSITION: relative; Left: 0px; TOP: 0px; HEIGHT: 226px; WIDTH: 140px;"></div> 

<!-- 这是提交表单,把代表用户形象的字符串赋到隐藏域 userequip 提交 -->

<form name="equipform" method="post" action="">

<input name="userequip" type="hidden" value=""> 

<input name="saveequip" type="submit" value="保存形象" > 

<input name="toreequip" type="button" value="原始形象" onclick="shoiwit('df>df>df>0');return false;" > 

</form>

<script language="JavaScript">

<!--

var myequip="df>df>df>0"; //最初显示的配置码,可由服务器读取并输出。

function shoiwit(equip){ //这个函数由配置码为参数,显示虚拟形象

showlayers=equip.split('>'); //以“>”为分隔符,分配各层图片名到一个数组 showlayers[]

str="";

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

if(showlayers[i]!='0'&&showlayers[i]!=''){ //如果图片名为0或空值则该层不显示。

str+="<img src='"+(i+1)+"/"+showlayers[i]+".gif' style='padding:0;position:absolute;top:0;left:0;width:140;height:226;z-index:"+(i+1)+";'>";

}

}

//最后在最上一层覆盖一幅完全透明的图片,这样用户在上面右链>另存为也只能保存这幅图了:

str+="<img src='blank.gif' style='padding:0;position:absolute;top:0;left:0;width:140;height:226;z-index:100;'>";

if(equipform.userequip) equipform.userequip.value=myequip=equip; //把配置码赋值到隐藏域中

bodyshow.innerHTML=str; //显示各层图片。

}

//页面加载后先显示最初的虚拟形象:

document.body.onload=new Function("shoiwit(myequip)");

function dressit(layer,img){ //这个函数用于更换配置,参数为 层数,图片名

//event.returnValue=false;

showlayers=myequip.split('>');

newequip="";

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

if(i+1==layer){

if(img==showlayers[i]) newequip+="df"; //如果该层已是这幅图片,则恢复为原始图片

else newequip+=img; //否则换为这幅图

}

else newequip+=showlayers[i]; //其他层图片不变

if(i+1!=showlayers.length) newequip+=">";

}

shoiwit(newequip); //显示最新配置

}

-->

</script>

<script event="onclick" for="cs">

var obj=event.srcElement;

if(obj.tagName!="IMG")return;

var vars=obj.src.match(/\/(\d)\/(\d)x\.gif$/);

dressit(vars[1],vars[2]);

</script>

<table border="0" cellspacing="0" cellpadding="0" id="cs">

  <tr> 

    <td><img src="4/1x.gif"></td>

    <td><img src="4/2x.gif"></td>

    <td><img src="4/3x.gif"></td>

    <td><img src="4/4x.gif"></td>

  </tr>

  <tr> 

    <td><img src="3/1x.gif"></td>

    <td><img src="3/2x.gif"></td>

    <td><img src="3/3x.gif"></td>

    <td><img src="3/4x.gif"></td>

  </tr>

  <tr> 

    <td><img src="2/1x.gif"></td>

    <td><img src="2/2x.gif"></td>

    <td><img src="2/3x.gif"></td>

    <td><img src="2/4x.gif"></td>

  </tr>

  <tr> 

    <td><img src="1/1x.gif"></td>

    <td><img src="1/2x.gif"></td>

    <td><img src="1/3x.gif"></td>

    <td><img src="1/4x.gif"></td>

  </tr>

</table>

</body>

</html>

运行效果如下图所示:

js实现仿QQ秀换装效果的方法

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
jquery form表单提交插件asp.net后台中文解码
Jun 12 Javascript
js切换光标示例代码
Oct 10 Javascript
禁止页面刷新让F5快捷键及右键都无效
Jan 22 Javascript
基于jquery实现鼠标滚轮驱动的图片切换效果
Oct 26 Javascript
JavaScript交换两个变量值的七种解决方案
Dec 01 Javascript
JavaScript数组去重的6个方法
Jan 21 Javascript
详解vue静态资源打包中的坑与解决方案
Feb 05 Javascript
抖音上用记事本编写爱心小程序教程
Apr 17 Javascript
监控微信小程序中的慢HTTP请求过程详解
Jul 05 Javascript
Jquery实现获取子元素的方法分析
Aug 24 jQuery
vue.js实现简单购物车功能
May 30 Javascript
nestjs返回给前端数据格式的封装实现
Feb 22 Javascript
深入理解JavaScript系列(43):设计模式之状态模式详解
Mar 04 #Javascript
深入理解JavaScript系列(42):设计模式之原型模式详解
Mar 04 #Javascript
javascript 动态创建表格的2种方法总结
Mar 04 #Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
Mar 04 #Javascript
深入理解JavaScript系列(40):设计模式之组合模式详解
Mar 04 #Javascript
百度地图自定义控件分享
Mar 04 #Javascript
jQuery实现仿淘宝带有指示条的图片转动切换效果完整实例
Mar 04 #Javascript
You might like
phpmyadmin操作流程
2006/10/09 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
PHP+Redis开发的书签案例实战详解
2019/07/09 PHP
PHP中类与对象功能、用法实例解读
2020/03/27 PHP
Prototype Class对象学习
2009/07/19 Javascript
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
2009/11/12 Javascript
Javascript优化技巧之短路表达式详细介绍
2015/03/27 Javascript
JavaScript中的原型prototype完全解析
2016/05/10 Javascript
jstl中判断list中是否包含某个值的简单方法
2016/10/14 Javascript
Web制作验证码功能实例代码
2017/06/19 Javascript
关于JavaScript中forEach和each用法浅析
2017/07/27 Javascript
vue中的event bus非父子组件通信解析
2017/10/27 Javascript
AngularJs 禁止模板缓存的方法
2017/11/28 Javascript
JavaScript设计模式之调停者模式实例详解
2018/02/03 Javascript
React Native 自定义下拉刷新上拉加载的列表的示例
2018/03/01 Javascript
bootstrap下拉分页样式 带跳转页码
2018/12/29 Javascript
详解vue使用插槽分发内容slot的用法
2019/03/28 Javascript
js实现网页版贪吃蛇游戏
2020/02/22 Javascript
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
在Gnumeric下使用Python脚本操作表格的教程
2015/04/14 Python
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
Python基于递归算法求最小公倍数和最大公约数示例
2018/07/27 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
python字符串分割及字符串的一些常规方法
2019/07/24 Python
keras:model.compile损失函数的用法
2020/07/01 Python
python中tkinter窗口位置\坐标\大小等实现示例
2020/07/09 Python
Python监听键盘和鼠标事件的示例代码
2020/11/18 Python
CSS3制作缩略图的详细过程
2016/07/08 HTML / CSS
茶叶店创业计划书范文
2014/01/19 职场文书
2015年测量员工作总结
2015/05/23 职场文书
庆元旦主持词
2015/07/06 职场文书
党员公开承诺书2016
2016/03/24 职场文书
Python Django框架介绍之模板标签及模板的继承
2021/05/27 Python
CSS3实现360度循环旋转功能
2022/02/12 HTML / CSS
HTML中的表单元素介绍
2022/02/28 HTML / CSS
Win10服务全部禁用了怎么启动?Win10服务全部禁用解决方法
2022/09/23 数码科技