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 相关文章推荐
jQuery 插件 将this下的div轮番显示
Apr 09 Javascript
jQuery ui插件的使用方法代码实例
May 08 Javascript
js的Prototype属性解释及常用方法
May 08 Javascript
JavaScript实现弹出子窗口并传值给父窗口
Dec 18 Javascript
PHP+mysql+Highcharts生成饼状图
May 04 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
Aug 27 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 Javascript
全面了解函数声明与函数表达式、变量提升
Aug 09 Javascript
js实现截图保存图片功能的代码示例
Feb 16 Javascript
详解微信小程序 登录获取unionid
Jun 27 Javascript
jQuery实现的点击按钮改变样式功能示例
Jul 21 jQuery
微信小程序封装自定义弹窗的实现代码
May 08 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书写安全的脚本代码
2012/02/05 PHP
深入探讨<br />和 \r\n两者有什么区别??
2013/06/05 PHP
php实现paypal 授权登录
2015/05/28 PHP
33道php常见面试题及答案
2015/07/06 PHP
CI(CodeIgniter)模型用法实例分析
2016/01/20 PHP
CI框架(CodeIgniter)实现的数据库增删改查操作总结
2018/05/23 PHP
swoole_process实现进程池的方法示例
2018/10/29 PHP
简单JS代码压缩器
2006/10/12 Javascript
javascript 点击整页变灰的效果(可做退出效果)。
2008/01/09 Javascript
js 关于=+与+=日期函数使用说明(赋值运算符)
2011/11/15 Javascript
验证控件与Button的OnClientClick事件详细解析
2013/12/04 Javascript
JS实现的5级联动Select下拉选择框实例
2015/08/17 Javascript
jQuery的框架介绍
2016/05/11 Javascript
Js 获取当前函数参数对象的实现代码
2016/06/20 Javascript
JS简单获取当前日期时间的方法(如:2017-03-29 11:41:10 星期四)
2017/03/29 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
vue-cli开发时,关于ajax跨域的解决方法(推荐)
2018/02/03 Javascript
在Vue中获取组件声明时的name属性方法
2018/09/12 Javascript
解决betterScroll在vue中存在图片时,出现拉不动的问题
2018/09/27 Javascript
操作按钮悬浮固定在微信小程序底部的实现代码
2019/08/02 Javascript
layui 数据表格 点击分页按钮 监听事件的实例
2019/09/02 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
vue开发中遇到的问题总结
2020/04/07 Javascript
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
2015/05/22 Python
python 编写简单网页服务器的实例
2018/06/01 Python
OpenCV3.0+Python3.6实现特定颜色的物体追踪
2019/07/23 Python
Python json读写方式和字典相互转化
2020/04/18 Python
基于注解实现 SpringBoot 接口防刷的方法
2021/03/02 Python
IE9对HTML5中部分属性不支持的原因分析
2014/10/15 HTML / CSS
广州某公司软件工程师面试题
2014/12/22 面试题
校园新闻广播稿
2014/01/10 职场文书
上课打牌的检讨书
2014/02/15 职场文书
什么是检讨书?检讨书的格式及范文
2019/11/05 职场文书
MySQL 1130异常,无法远程登录解决方案详解
2021/08/23 MySQL
深入理解go缓存库freecache的使用
2022/02/15 Golang
springboot入门 之profile设置方式
2022/04/04 Java/Android