js+css实现换肤效果

本文实例为大家分享了js+css实现换肤效果的具体代码,供大家参考,具体内容如下

效果图如下:

需求:点击对应小圆点,下面内容颜色跟着改变

主要思路:

1.在css中把对应的样式先写好;
2.获取小圆点给它绑定点击事件;
3.获取当前点击元素的类名;
4.将该类名设置给body;

js主要考察的是获取属性值和设置属性值;

<style>
        *{
            margin:0;
            padding:0;
            list-style: none;
        }
        .dot{
            
            margin:100px auto;
            display: flex;
            justify-content: center;

        }
        .dot li{
            width: 30px;
            height: 30px;
            border-radius: 50%;
           cursor: pointer;
        }
        .dot li:first-child{
            background:pink;
        }
        .dot li:nth-child(2){
            background:green;
        }
        .dot li:nth-child(3){
            background:gold;
        }
        .dot li:last-child{
            background:skyblue;
        }
        .dot li:not(:last-child){
            margin-right: 10px;
        }
        .content{
            margin:100px auto;
            width: 300px;
        }
        .pink .content .banner{
            height: 160px;
            width: 100%;
            background:pink;
        }
        .pink .content li{
            color:pink;
            margin-bottom: 10px;
            border-bottom: 1px dashed pink;
            line-height: 40px;
        }

        .green .content .banner{
            height: 160px;
            width: 100%;
            background:green;
        }
        .green .content li{
            color:green;
            margin-bottom: 10px;
            border-bottom: 1px dashed green;
            line-height: 40px;
        }

        .gold .content .banner{
            height: 160px;
            width: 100%;
            background:gold;
        }
        .gold .content li{
            color:gold;
            margin-bottom: 10px;
            border-bottom: 1px dashed gold;
            line-height: 40px;
        }

        .skyblue .content .banner{
            height: 160px;
            width: 100%;
            background:skyblue;
        }
        .skyblue .content li{
            color:pink;
            margin-bottom: 10px;
            border-bottom: 1px dashed skyblue;
            line-height: 40px;
        }
</style>
<body class="pink">

    <ul class="dot">
        <li class="pink"></li>
        <li class="green"></li>
        <li class="gold"></li>
        <li class="skyblue"></li>
    </ul>

    <div class="content">
        <div class="banner"></div>
        <ul>
            <li>奶茶</li>
            <li>火锅</li>
            <li>串串</li>
            <li>烤肉</li>
        </ul>
    </div>

    <script>
        window.onload = function(){
            let lis = document.querySelectorAll('.dot li');
            let body = document.querySelector('body');
            for(let i=0;i<lis.length;i++){
                lis[i].addEventListener('click',function(){
                    // 获取属性值:元素名.属性名  设置属性值:元素名.属性名 = 属性值 ;  移除属性:元素名.属性名 = "";(此种方法不能获取,设置,移除自定义属性)
                    
                    //获取属性值 :元素名.getAttribute('属性名')  ;设置属性值:元素名.setAttribute('属性名','属性值') ;移除属性:元素名.removeAttribute('属性名') (此种方法能获取,设置,移除自定义属性,可对任何属性有效)
                    let color = this.getAttribute('class')
                    body.setAttribute('class',color)
                })
            }
        }
    </script>
</body>

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

(0)

相关推荐

  • js+css简单实现网页换肤效果

    本文实例讲述了js+css简单实现网页换肤效果.分享给大家供大家参考,具体如下: 这里做了3套外观,分别使用不同文件夹下的同名css文件,那么怎样实现js替换加载呢? 3个按钮如下: <a id="skin1" href="javascript:void(0)" class="easyui-linkbutton" onclick="changeCss('default')">蓝色皮肤</a><br

  • javascript实现动态CSS换肤技术的脚本

    <SCRIPT LANGUAGE=javascript>     <!--     function SetCookie(name,value){         var argv=SetCookie.arguments;         var argc=SetCookie.arguments.length;         var expires=(2<argc)?argv[2]:null;         var path=(3<argc)?argv[3]:null; 

  • Javascript结合css实现网页换肤功能

    Html代码部分: 1.要有一个带id的样式表链接,我们要通过操作这个链接来调用不同的href. <link href="css/main0.css" rel="stylesheet" type="text/css" id="cssfile" /> 2.皮肤选择按钮(后台为每个li添加onclick事件,触发换肤功能) <ul id="skin"> <li id="s

  • js+css实现换肤效果

    本文实例为大家分享了js+css实现换肤效果的具体代码,供大家参考,具体内容如下 效果图如下: 需求:点击对应小圆点,下面内容颜色跟着改变 主要思路: 1.在css中把对应的样式先写好:2.获取小圆点给它绑定点击事件:3.获取当前点击元素的类名:4.将该类名设置给body: js主要考察的是获取属性值和设置属性值: <style>         *{             margin:0;             padding:0;             list-style: no

  • js实现一键换肤效果

    本文实例为大家分享了js实现一键换肤效果的具体代码,供大家参考,具体内容如下 方法1 <!DOCTYPE html> <html lang="en"> <head>   <meta charset="UTF-8">   <meta http-equiv="X-UA-Compatible" content="IE=edge">   <meta name="

  • js Dom实现换肤效果

    本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>换肤</title> <link rel="stylesheet" href="base.css"> <link

  • jQuery实现的网页换肤效果示例

    本文实例讲述了jQuery实现的网页换肤效果.分享给大家供大家参考,具体如下: 现在许多后台网站都有换皮肤的效果,今天我用 jquery 写了这个效果,主要思路是改变 link 标签的 href 属性值. html 代码如下: <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"/> <title>网页换肤效果</title&

  • jQuery实现简单的网页换肤效果示例

    本文实例讲述了jQuery实现简单的网页换肤效果.分享给大家供大家参考,具体如下: 这里有4个文件:skin.html.blue.css.green.html.red.html,都放在同一目录下. 1.skin.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&

  • JS实现网站换肤

    本文实例为大家分享了JS实现网站换肤的具体代码,供大家参考,具体内容如下 先看效果 1.左侧是待选择的图片列表2.点击对应图片自动为当前网站换背景图片3.为当前选择的图片加个2px的border 代码如下: <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <meta name="viewport" c

  • js实现网页换肤

    本文实例为大家分享了js实现网页换肤的具体代码,供大家参考,具体内容如下 效果: 代码: <!DOCTYPE html> <html>     <head>         <meta charset="utf-8">         <title></title>         <style type="text/css">             *{             

  • jQuery结合jQuery.cookie.js插件实现换肤功能示例

    本文实例讲述了jQuery结合jQuery.cookie.js插件实现换肤功能.分享给大家供大家参考,具体如下: 上一次和大家分享了如何实现换肤功能,但是script代码好像有点长,所以这次打算使用cookie.js插件来实现换肤功能,好啦,我们开始吧. jQuery.cookie.js下载:https://github.com/carhartl/jquery-cookie/ 先来了解下cookie.js如何使用. 先导入: <script type="text/javascript&qu

  • 动态CSS,换肤技术

    见的例子就是:一个站点上有多个页面样式提供浏览者选择. 同时,在选择了某样式后,再次打开该页面时,将仍然保持该样式. 自然会想到了Cookie技术 以下是程序代码: <HTML> <HEAD> <link ID="skin" rel="stylesheet" type="text/css"> <TITLE>换肤技术</TITLE> <SCRIPT LANGUAGE=javascri

随机推荐