美文网首页
网页换皮肤

网页换皮肤

作者: 升龙无涯 | 来源:发表于2021-08-03 17:24 被阅读0次

在多年前的浏览器中,给网页更换背景皮肤这个功能很常见。有两种更换方式,将背景换成图片或换成指定的颜色。

更换图片背景皮肤:

最终效果:


网页更换图片皮肤

html代码结构:

<style type="text/css">
    html,body{
        width:100%;
        height:100%;
        overflow: hidden;
    }
    .box{
        width:100%;
        height:0;
        background:pink;
        overflow:hidden;
        transition:height 2s ease;
        display: flex;
        justify-content: space-around;
        align-items: center;
    }
    .box>img{
        width: 200px;
        height: 100px;
        border-radius:10px;
    }
</style>
<div class="box">
    <img src="./images/1.jpg" alt="">
    <img src="./images/2.jpg" alt="">
    <img src="./images/3.jpg" alt="">
</div>
<button class="btn">按钮</button>

js代码:

// 获取标签
var btn = document.querySelector('.btn');
var box = document.querySelector('.box');
var oImgs = document.querySelectorAll('.box>img');
// 给按钮绑定单击事件
btn.onclick = function(){
    // 如果div盒子的高度不为0
    if(box.offsetHeight){
        // 将盒子的高度设置为0
        box.style.height = 0
    }else{
        // 如果盒子的高度是0,就将盒子的高度设置150
        box.style.height = '150px'
    }
}
// 遍历所有img标签
for(var i=0;i<oImgs.length;i++){
    // 给所有img绑定单击事件
    oImgs[i].onclick = function(){
        // 将当前图片的路径设置给body的背景
        document.body.style.backgroundImage = 'url('+this.src+')';
        // 设置body的背景图大小
        document.body.style.backgroundSize = '100% 100%';
        // 设置body的背景图不平铺
        document.body.style.backgroundRepeat = 'no-repeat';
        // 将盒子高度设置为0
        box.style.height = 0
    }
}

更换颜色背景皮肤

最终效果:


网页更换颜色皮肤

html代码结构:

<style>
.box{
    width: 200px;
    height: 200px;
    border:1px solid #000;
}
.box:after{
    content:"";
    display: block;
    clear:both;
}
</style>
<div class="box"></div>

js代码:

// 获取box盒子
var box = document.querySelector('.box');
// 创建4个div放在box中
for(var i=1;i<=4;i++){
    var div = document.createElement('div')
    // 给div设置样式
    setStyle(div,{
        width: "100px",
        height: "100px",
        float: "left",
        backgroundColor: getColor()
    })
    // 将div放在box中
    box.appendChild(div)
}
// 获取box下的所有div
var divs = document.querySelectorAll('.box>div');
// 遍历divs绑定事件
for(var i=0;i<divs.length;i++){
    // 给每个div绑定事件
    divs[i].onclick = function(){
        // 获取到当前点击的这个div的背景颜色,设置给body的背景
        document.body.style.backgroundColor = getStyle(this,'backgroundColor')
    }
}
// 获取样式的函数
function getStyle(ele,attr){
    if(window.getComputedStyle){
        return getComputedStyle(ele)[attr]
    }else{
        return ele.currentStyle[attr]
    }
}
// 批量设置样式的函数
function setStyle(ele,styleObj){
    for(var attr in styleObj){
        ele.style[attr] = styleObj[attr]
    }
}
// 获取随机颜色的函数
function getColor(){
    return `rgb(${Math.floor(Math.random()*256)},${Math.floor(Math.random()*256)},${Math.floor(Math.random()*256)})`;
}

相关文章

  • 【饥荒】从零开始系列:科雷*

    科雷的每次更新都会发放一定的点数,我们通过点数可以换一些皮肤 同时直播也是可以挂出皮肤的 另外,如果网页上不去,可...

  • 网页换皮肤

    在多年前的浏览器中,给网页更换背景皮肤这个功能很常见。有两种更换方式,将背景换成图片或换成指定的颜色。 更换图片背...

  • jquery 点击应用

    放大/缩小网页字体大小 网页换皮肤/背景

  • html基本结构

    1、html基本结构 网页标题 网页显示内容 2、html标题,段落,换...

  • python爬虫 王者荣耀某英雄皮肤下载器

    实现:自己输入英雄名,下载皮肤在文件夹内难点: ajax和网页路径分析英雄页面 皮肤图片路径 访问网页得到英雄列表...

  • 皮肤学习之外油内干敏感型

    我决定开始对皮肤的学习及护肤品的学习是源自于我个人皮肤属非常敏感型皮肤,很多网页上称我这种皮肤为外油内干型敏感皮肤...

  • iOS开发中让UIButton上的image进行360度旋转

    背景: 在项目中的一个网页中有一个“换一换”按钮,点击更换页面上的书籍。在原生页面也有一个“换一换”按钮,该按钮样...

  • css/less 实现动态更换主题色

    固定主题色的切换 思路:访问网页 => js读取缓存(判断是否有主题色的值,没有就默认皮肤,有则使用指定皮肤) =...

  • 2021-01-29

    #HOSOER花索皮肤案例反馈 这组案例是叫皮肤微生态平衡后… 皮肤管理不是换脸 但是肤质提升后整个人“高级”了[...

  • vue实现换主题\皮肤功能

    现在的app和pc网站做的越来越花哨,但是有时候用户并不喜欢你给他挑选好的主题颜色,这个时候就需要一个换皮肤的功能...

网友评论

      本文标题:网页换皮肤

      本文链接:https://www.haomeiwen.com/subject/euuevltx.html