原生JavaScript实现换肤


Posted in Javascript onFebruary 19, 2021

原生JavaScript实现换肤的具体代码,供大家参考,具体内容如下

原理

通过点击事件,获取点击的的图片的信息,在HTML背景图片的路径改变

css样式

<style>
 body{
 margin:0;
 padding:0;
 background:url(img/1.jpg) no-repeat;
 background-size:100% 100%;
 }
 #box{
 width:100%;
 height:130px;
 background:#999999;
 }
 #box ul{
 margin:0;
 padding:0;
 list-style:none;
 }
 #box ul li li,#box ul li img{
 width:180px;
 height:120px;
 float:left;
 margin:5px 60px;
 }
</style>

HTML源码

<body id="Body">

 <div id="box">
 <ul>
 <li><img src="img/1.jpg" /></li>
 <li><img src="img/2.jpg" /></li>
 <li><img src="img/3.jpg" /></li>
 <li><img src="img/4.jpg" /></li>
 <li><img src="img/5.jpg" /></li>
 </ul>
 </div>

</body>

JavaScript源码

<script>

 var oBody=document.getElementById('Body');
 var oImg=document.getElementsByTagName('img');
 
 for(var i=0;i<oImg.length;i++)
 {
 
 var oImgA=oImg[i];
 oImgA.index=i+1;
 
 oImgA.onclick=function(){
 
 //console.log(this);
 oBody.style.background='url(img/'+this.index+'.jpg) no-repeat';
 oBody.style.backgroundSize='100% 100%'; 
 
 };
 
 }
</script>

效果图

原生JavaScript实现换肤

点击切换

原生JavaScript实现换肤

源码

<!DOCTYPE>
<html lang="en">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>换肤</title>
 <style>
 body{
 margin:0;
 padding:0;
 background:url(img/1.jpg) no-repeat;
 background-size:100% 100%;
 }
 #box{
 width:100%;
 height:130px;
 background:#999999;
 }
 #box ul{
 margin:0;
 padding:0;
 list-style:none;
 }
 #box ul li li,#box ul li img{
 width:180px;
 height:120px;
 float:left;
 margin:5px 60px;
 }
 </style>
</head>
<body id="Body">

 <div id="box">
 <ul>
 <li><img src="img/1.jpg" /></li>
 <li><img src="img/2.jpg" /></li>
 <li><img src="img/3.jpg" /></li>
 <li><img src="img/4.jpg" /></li>
 <li><img src="img/5.jpg" /></li>
 </ul>
 </div>

</body>
</html>


<script>

 var oBody=document.getElementById('Body');
 var oImg=document.getElementsByTagName('img');
 
 for(var i=0;i<oImg.length;i++)
 {
 
 var oImgA=oImg[i];
 oImgA.index=i+1;
 
 oImgA.onclick=function(){
 
 //console.log(this);
 oBody.style.background='url(img/'+this.index+'.jpg) no-repeat';
 oBody.style.backgroundSize='100% 100%'; 
 
 }; 
 }
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
利用Ext Js生成动态树实例代码
Sep 08 Javascript
Struts2的s:radio标签使用及用jquery添加change事件
Apr 08 Javascript
js操作IE浏览器弹出浏览文件夹可以返回目录路径
Jul 14 Javascript
jQuery中document与window以及load与ready 区别详解
Dec 29 Javascript
jQuery简单实现图片预加载
Apr 20 Javascript
jQuery.form.js插件不能解决连接超时(timeout)的原因分析及解决方法
Oct 14 Javascript
JavaScript获取服务器端时间的方法
Nov 29 Javascript
js 动态生成html 触发事件传参字符转义的实例
Feb 14 Javascript
js实现自动图片轮播代码
Mar 22 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
JS获取input[file]的值并显示在页面的实现方法
Mar 09 Javascript
vue实现点击追加选中样式效果
Nov 01 Javascript
基于vue的video播放器的实现示例
Feb 19 #Vue.js
JavaScript Dom实现轮播图原理和实例
Feb 19 #Javascript
JavaScript使用setTimeout实现倒计时效果
Feb 19 #Javascript
react项目从新建到部署的实现示例
Feb 19 #Javascript
原生JavaScript实现幻灯片效果
Feb 19 #Javascript
JavaScript 实现继承的几种方式
Feb 19 #Javascript
JavaScript 生成唯一ID的几种方式
Feb 19 #Javascript
You might like
php 更新数据库中断的解决方法
2009/06/05 PHP
ThinkPHP缓存方法S()概述
2014/06/13 PHP
基础的WordPress插件制作教程
2015/11/24 PHP
jquery 3D球状导航的文章分类
2010/07/06 Javascript
Jquery replace 字符替换实现代码
2010/12/02 Javascript
jquery索引在使用中的一些困惑
2013/10/24 Javascript
HTML,CSS,JavaScript速查表推荐
2014/12/02 Javascript
浅谈JavaScript的Polymer框架中的事件绑定
2015/07/29 Javascript
基于replaceChild制作简单的吞噬特效
2015/09/21 Javascript
Web Uploader文件上传插件使用详解
2016/05/10 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
2017/03/16 Javascript
vue.js路由跳转详解
2017/08/28 Javascript
nodejs基于WS模块实现WebSocket聊天功能的方法
2018/01/12 NodeJs
JavaScript门道之标准库
2018/05/26 Javascript
Vue 菜单栏点击切换单个class(高亮)的方法
2018/08/22 Javascript
微信小程序数据统计和错误统计的实现方法
2019/06/26 Javascript
vue使用lodop打印控件实现浏览器兼容打印的方法
2021/02/07 Vue.js
Python实现基本数据结构中队列的操作方法示例
2017/12/04 Python
python如何读写csv数据
2018/03/21 Python
Python selenium抓取微博内容的示例代码
2018/05/17 Python
对Python中Iterator和Iterable的区别详解
2018/10/18 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
django 类视图的使用方法详解
2019/07/24 Python
Python实现搜索算法的实例代码
2020/01/02 Python
Django values()和value_list()的使用
2020/03/31 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
2020/04/14 Python
python数据处理——对pandas进行数据变频或插值实例
2020/04/22 Python
python使用布隆过滤器的实现示例
2020/08/20 Python
canvas学习总结三之绘制路径-线段
2019/01/31 HTML / CSS
如何删除一个表里面的重复行
2013/07/13 面试题
广州一家公司的.NET面试题
2016/06/11 面试题
单位员工收入证明样本
2014/10/09 职场文书
幼儿教师远程研修感悟
2015/11/18 职场文书
八年级英语教学反思
2016/02/15 职场文书
2019财务毕业实习报告
2019/06/27 职场文书
Vue全家桶入门基础教程
2021/05/14 Vue.js