JS实现网站换肤

本文实例为大家分享了JS实现网站换肤的具体代码,供大家参考,具体内容如下

先看效果

1、左侧是待选择的图片列表
2、点击对应图片自动为当前网站换背景图片
3、为当前选择的图片加个2px的border

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>网站换肤</title>
    <style>
        body {
            background: url(images/abc-123.jpg) no-repeat center;
        }
        ul li {
            list-style: none;
        }
        .baidu img {
            width: 100px;
        }
        .baidu li:hover img {
            border: 1px solid red;
        }
    </style>
</head>
<body>
    <ul class="baidu">
        <li><img src="images/Colorful-Abstraction01.jpg" alt=""></li>
        <li><img src="images/Colorful-Abstraction02.jpg" alt=""></li>
        <li><img src="images/Colorful-Abstraction03.jpg" alt=""></li>
        <li><img src="images/abc-123.jpg" alt=""></li>
    </ul>
    <script>
        // 获取元素
        var imgs = document.querySelectorAll("img");
        // 注册事件并处理
        for(var i = 0; i < imgs.length; i++){
            imgs[i].onclick = function(){
                document.body.style.backgroundImage = "url(" + this.src + ")";
                for(var i = 0; i < imgs.length; i++){
                    imgs[i].style.border = "none";
                }
                this.style.border = "2px solid red";
            }
        }
    </script>
</body>
</html>

×为当前选择的图片加2px边框前,需要使用for循环初始化所有图片的边框,不然点击一个就会产生一个边框。

for(var i = 0; i < imgs.length; i++){
    imgs[i].style.border = "none";
}

接着再为当前选择的图片加上边框

this.style.border = "2px solid red";

×为body更换背景图片时,需要注意css的写法backgroundImage, 且还需注意js中字符换和变量的拼接方法

document.body.style.backgroundImage = "url(" + this.src + ")"

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

(0)

相关推荐

  • js简单实现网页换肤功能

    我发现网上写换肤功能写的有点长,就想想如何更简单方法实现这个功能,于是我自己写了一个. html <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <link id="changelink" rel="stylesheet" href="css/default.css&

  • JS实现换肤功能的方法实例详解

    本文实例讲述了JS实现换肤功能的方法.分享给大家供大家参考,具体如下: 首先准备HTML页面如下: <div id="container"> <div id="header"> <h3>无人驾驶要征服世界,得先解决这些问题</h3> </div> <div id="nav"> <input type="button" id="blue&qu

  • 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; 

  • js动态修改整个页面样式达到换肤效果

    jsPro1\js动态修改整个html页面样式(换肤).html 复制代码 代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>动态修改页面样式

  • 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实现网页换肤功能

    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实现简单的网页换肤效果

    中心思想:网页换肤的原理就是通过调用不同的样式表文件来实现不同的皮肤切换,并且需要将换好的皮肤计入Cookie中,这样用户已下次访问时,就可以显示用户自定义皮肤了 步骤: 1.在设计HTML代码时,用了一些小技巧,就是将皮肤选择按钮<li>元素的id与网页皮肤的样式文件名称设置的相同.这样就可以使完成换肤操作简化很多. 2.HTML结构要有一个带id的样式表链接,通过操作该链接的herf属性的值,从而实现换肤 <link rel="stylesheet" href=&

  • AngularJS实现网站换肤实例

    网站不应该只注重功能,还应该注重用户体验:成熟的大型网站大都具备让用户自行选择主题及颜色的功能,AngularJS也可以做到这点. 效果图: 原理是使用ng-href来动态为网页更换样式: <link rel="stylesheet" type="text/css" ng-href="{{theme.value}}.css"> 代码: <!DOCTYPE html> <html ng-app="app&qu

  • js实现一键换肤效果

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

  • JavaScript实现换肤功能

    一,js换肤的基本原理 基本原理很简单,就是使用 JS 切换对应的 CSS 样式表文件.例如导航网站 Hao123 的右上方就有网页换肤功能.除了切换 CSS 样式表文件之外,通常的网页换肤还需要通过 Cookie 来记录用户之前更换过的皮肤,这样下次用户访问的时候,就可以自动使用上次用户配置的选项. 那么基本工作流程就出来了:访问网页--JS 读取 Cookie --如果没有,使用默认皮肤--如果有,使用指定皮肤:用户点击换肤选项--JS 控制替换对应的 CSS 样式表--将皮肤选项写进 Co

随机推荐