纯js实现背景图片切换效果代码


Posted in Javascript onNovember 14, 2010

html代码

<!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> 
<title>背景切换</title> 
<link href="css/bgchage.css" type="text/css" rel="Stylesheet" /> 
</head> 
<body> 
<div><ul><li></li><li></li><li></li><li></li></ul></div> 
<!-- <div>1</div><div>2</div><div>3</div><div>4</div>--> 
</body> 
<script src="js/bgchage.js" type="text/javascript" ></script> 
</html>

因为javascript逻辑顺序比较强,所以要考虑引用js的位置
css代码
body {font-size:12px;} 
div{ width:950px; height:800px; margin:0 auto; border:solid 1px #d0d0d0;} 
li{ list-style-type:none;border:solid 1px #d0d0d0; float:left; margin: 1px; padding:0 5px; height:12px; width:10px;} 
/*div{ width:6px; height:14px; margin:1px; padding:0 5px; float:left; border:solid 1px #d0d0d0;}*/

javascript代码部分:
window.onload=init; 
var element= document.getElementsByTagName("li"); 
function init() //初始化背景色 
{ 
var element= document.getElementsByTagName("li"); 
for(var i=0; i<4;i++) 
{ 
var k=i+1; 
element[i].style.background="url(images/"+k.toString()+".jpg)"; 
} 
} 
function addclick() 
{ 
for(var i=0; i<4;i++) 
{ 
var k=i+1; 
if(window.attachEvent) 
element[i].attachEvent("onclick", new Function("bgchage("+k+");")); //创建事件不能直接.onclick而需要使用.attachEvent("事件",new Function("被调函数("+参数+");"));IE6通过 
else 
element[i].addEventListener("click", new Function("bgchage("+k+");"),false); 
} 
} 
function bgchage(t) //根据色块改变背景色 
{ 
document.getElementsByTagName("body")[0].style.background="url(images/"+t+".jpg)"; 
} 
addclick();

js部分要注意写事件的兼容,而且其实jq的思路就是将很多功能写成插件的形式供自己使用,用javascript写,可以写自己的类库,供反复使用,也无需承担jquery类库的负担。其实我也不是说jquery不好,从大的方面来说,jquery的插件大小影响并不大,前端事件看了百度前端交流会的视频,发现人家的类库也都是js自己写的,这给了我继续学习js的动力。
Javascript 相关文章推荐
HTML-CSS群中单选引发的“事件”
Mar 05 Javascript
jquery 使用点滴函数代码
May 20 Javascript
JavaScript对象创建及继承原理实例解剖
Feb 28 Javascript
Jquery操作cookie记住用户名
Mar 29 Javascript
关于Jquery中的bind(),on()绑定事件方式总结
Oct 26 Javascript
javascript正则表达式模糊匹配IP地址功能示例
Jan 06 Javascript
jQuery使用方法
Feb 04 Javascript
使用nvm管理不同版本的node与npm的方法
Oct 31 Javascript
Node.js利用console输出日志文件的方法示例
Apr 27 Javascript
手淘flexible.js框架使用和源代码讲解小结
Oct 15 Javascript
JS对象和字符串之间互换操作实例分析
Feb 02 Javascript
Node.js 多进程处理CPU密集任务的实现
May 26 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
Nov 14 #Javascript
cnblogs中在闪存中屏蔽某人的实现代码
Nov 14 #Javascript
基于MooTools的很有创意的滚动条时钟动画
Nov 14 #Javascript
javascript 学习笔记(onchange等)
Nov 14 #Javascript
javascript取消文本选定的实现代码
Nov 14 #Javascript
IE6下通过a标签点击切换图片的问题
Nov 14 #Javascript
基于Jquery的回车成tab焦点切换效果代码(Enter To Tab )
Nov 14 #Javascript
You might like
计算2000年01月01日起到指定日的天数
2006/10/09 PHP
也谈php网站在线人数统计
2008/04/09 PHP
php中使用__autoload()自动加载未定义类的实现代码
2013/02/06 PHP
无需数据库在线投票调查php代码
2016/07/20 PHP
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
2010/11/25 Javascript
javascript各浏览器中option元素的表现差异
2011/04/07 Javascript
重写javascript中window.confirm的行为
2012/10/21 Javascript
关闭ie窗口清除Session的解决方法
2014/01/10 Javascript
javacript使用break内层跳出外层循环分析
2015/01/12 Javascript
Node.js编写组件的三种实现方式
2016/02/25 Javascript
Bootstrap零基础入门教程(三)
2016/07/18 Javascript
详解vue.js组件化开发实践
2016/12/14 Javascript
SVG描边动画
2017/02/23 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
jQuery实现验证码功能
2017/03/17 Javascript
详解nodejs express下使用redis管理session
2017/04/24 NodeJs
(模仿京东用户注册)用JQuery实现简单表单验证,初学者必看
2018/01/08 jQuery
JS实现的碰撞检测与周期移动完整示例
2019/09/02 Javascript
JS删除数组指定值常用方法详解
2020/06/04 Javascript
vue + el-form 实现的多层循环表单验证
2020/11/25 Vue.js
编写v-for循环的技巧汇总
2020/12/01 Javascript
Python去除、替换字符串空格的处理方法
2018/04/01 Python
Django中更改默认数据库为mysql的方法示例
2018/12/05 Python
Python正则匹配判断手机号是否合法的方法
2020/12/09 Python
Python简直是万能的,这5大主要用途你一定要知道!(推荐)
2019/04/03 Python
基于python实现百度翻译功能
2019/05/09 Python
Supersmart英国:欧洲市场首批食品补充剂供应商之一
2018/05/05 全球购物
英国第一摩托车和摩托车越野配件商店:GhostBikes
2019/03/10 全球购物
美团网旗下网上订餐平台:美团外卖
2020/03/05 全球购物
电子信息工程专业推荐信
2014/02/14 职场文书
桥梁工程专业求职信
2014/04/21 职场文书
三分钟英语演讲稿
2014/04/24 职场文书
职务说明书范文
2014/05/07 职场文书
新疆民族团结演讲稿
2014/08/27 职场文书
导游词之天下银坑景区
2019/11/21 职场文书
Spring整合Mybatis的全过程
2021/06/28 Java/Android