原生JavaScript实现简易换肤效果代码
Admin 2021-04-14 群英技术资讯 1054 次浏览
用原生JavaScript如何实现换肤效果?在前端开发中,换肤效果也是比较常遇到需求,例如一些导航网站就有网页换肤功能。而要实现js换肤的原理其实很简答,就是用JS切换到对应的CSS样式表文件就可以实现了。下面是用原生JS现实的简单换肤效果,供大家参考。
原理
通过点击事件,获取点击的的图片的信息,在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>
效果图
点击切换
源码
<!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>
以上就是用原生JS实现的简单换肤效果,有需要的朋友可以自己动手实现一下,希望本文对大家学习有所帮助,更多原生JS内容大家可以关注其他文章。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
NaN返回NaN的操作数。无限大除以无限大,返回NaN。0除以0返回NaN,无限除以0,无限返回,有限数除以0返回无限大。将Number(a)转换后运算,而不是数值。
状况:本地的前端项目(uni-app)以及后台管理(vue-mongo-node)和本地mongo数据库前台项目端口是8082,后台数据接口是8081.跨域解决,直接上代码:uni-app的mainfest.json下: 红色部分代理(node设置允许跨域之后,不加这部分的代理也可以跨域请求) 可加可不加"app-plus":{/*5+App特有相关*/"splashsc
目录背景实现水印恶意修改MutationObserver背景大家平时在开发中或者在面试中,难免都会遇到一个问题——给页面加水印,其实这并不难,但是也是有一些注意点的,所以说看似简单的功能,要尽力做到:1、严谨性2、安全性实现水印其实实现水印并不难,只需要利用自定义指令 + canvas + background-ima
今天给大家分享的是关于用JS实现表格拖动选择的内容,本文有实例和详细注释供大家参考,对大家学习JavaScript有一定的帮助,有需要的朋友可以参考,接下来跟随小编一起看看吧。
本篇文章给大家带来了关于javascript的相关知识,其中主要整理了异步与回调的基本概念的相关问题,同步,一般指按照预定的顺序依次执行任务,只有当上一个任务完成后,才开始执行下一个任务,异步,与同步相对应,异步指的是让CPU暂时搁置当前任务,先处理下一个任务,当收到上个任务的回调通知后,再返回上个任务继续执行,下面一起来看一下,希望对大家有帮助。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008