AngularJS实现网站换肤实例


Posted in Javascript onFebruary 19, 2021

网站不应该只注重功能,还应该注重用户体验;成熟的大型网站大都具备让用户自行选择主题及颜色的功能,AngularJS也可以做到这点。

效果图:

AngularJS实现网站换肤实例

原理是使用ng-href来动态为网页更换样式:

<link rel="stylesheet" type="text/css" ng-href="{{theme.value}}.css">

代码:

<!DOCTYPE html>
<html ng-app="app" ng-controller="mainCtrl">
<head >
 <meta charset="UTF-8">
 <title></title>
 //动态更新CSS样式
 <link rel="stylesheet" type="text/css" ng-href="{{theme.value}}.css">
 <script src="../angular.js"></script>
 <style type="text/css">
 h1{
  font-style:italic;
 }
 </style>
 <script type="text/javascript">
 angular.module("app", [])
  .controller("mainCtrl", function($scope){
  $scope.options = [
   {
   name:"蓝色",
   value:"blue"
   },
   {
   name:"红色",
   value:"red"
   }
  ];
  //默认选择第一个样式
  $scope.theme = $scope.options[0];
  })
 </script>
</head>
<body>
 <select ng-model="theme" ng-options="c.name for c in options">
 </select>
 <h1>Welcome</h1>
 <ul>
 <li>Home</li>
 <li>About</li>
 <li>Contact</li>
 </ul>
</body>
</html>

blue.css

h1{
 color:blue;
}
ul li{
 display:inline-block;
}

red.css

h1{
 color:red;
}

此文档的作者:justforuse
Github Pages:justforuse

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

Javascript 相关文章推荐
event.srcElement 用法笔记e.target
Dec 18 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
Sep 09 Javascript
浅谈javascript函数式编程
Sep 06 Javascript
jquery弹出遮掩层效果【附实例代码】
Apr 28 Javascript
JS全局变量和局部变量最新解析
Jun 24 Javascript
JavaScript中值类型和引用类型的区别
Feb 23 Javascript
微信小程序实现选项卡功能
Jun 19 Javascript
细说webpack源码之compile流程-入口函数run
Dec 26 Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
Dec 10 Javascript
在博客园博文中添加自定义右键菜单的方法详解
Feb 05 Javascript
react组件基本用法示例小结
Apr 27 Javascript
javascript Number 与 Math对象的介绍
Nov 17 Javascript
详解js树形控件—zTree使用总结
Dec 28 #Javascript
js 轮播效果实例分享
Dec 28 #Javascript
JS正则RegExp.test()使用注意事项(不具有重复性)
Dec 28 #Javascript
Bootstrap 模态框实例插件案例分析
Dec 28 #Javascript
Angular使用ng-messages与PHP进行表单数据验证
Dec 28 #Javascript
Bootstrap中datetimepicker使用小结
Dec 28 #Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
Dec 28 #Javascript
You might like
PHP函数常用用法小结
2010/02/08 PHP
Symfony2实现在doctrine中内置数据的方法
2016/02/05 PHP
yum命令安装php7和相关扩展
2016/07/04 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
jQuery封装的获取Url中的Get参数示例
2013/11/26 Javascript
javascript将相对路径转绝对路径示例
2014/03/14 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
2015/03/26 Javascript
JavaScript变量的作用域全解析
2015/08/14 Javascript
JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)
2017/01/06 Javascript
简单谈谈gulp-changed插件
2017/02/21 Javascript
js实现一个简单的数字时钟效果
2017/03/29 Javascript
vue 里面使用axios 和封装的示例代码
2017/09/01 Javascript
基于js的变量提升和函数提升(详解)
2017/09/17 Javascript
vue首次赋值不触发watch的解决方法
2018/09/11 Javascript
ndm:NPM的桌面GUI应用程序
2018/10/15 Javascript
vue+animation实现翻页动画
2020/06/29 Javascript
Vue中的nextTick作用和几个简单的使用场景
2021/01/25 Vue.js
详解javascript脚本何时会被执行
2021/02/05 Javascript
[49:29]LGD vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[59:48]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第一场 1月26日
2021/03/11 DOTA
Python  __getattr__与__setattr__使用方法
2008/09/06 Python
Windows下Eclipse+PyDev配置Python+PyQt4开发环境
2016/05/17 Python
Python 登录网站详解及实例
2017/04/11 Python
Python用于学习重要算法的模块pygorithm实例浅析
2018/08/16 Python
Python考拉兹猜想输出序列代码实践
2019/07/05 Python
python爬虫 urllib模块发起post请求过程解析
2019/08/20 Python
Python 3.8正式发布重要新功能一览
2019/10/17 Python
详解python如何引用包package
2020/06/07 Python
Python如何优雅删除字符列表空字符及None元素
2020/06/25 Python
基于Python爬取fofa网页端数据过程解析
2020/07/13 Python
Selenium Webdriver元素定位的八种常用方式(小结)
2021/01/13 Python
html5视频自动横过来自适应页面且点击播放功能的实现
2020/06/03 HTML / CSS
销售人员中英文自荐信
2013/09/22 职场文书
父母寄语大全
2014/04/12 职场文书
python 下划线的多种应用场景总结
2021/05/12 Python