一个网站可以有多种配色方案,例如正常模式,夜间模式等。
简单示例一个通过点击按钮,更换css文件,达到切换配色模式的angularjs 小app。
主要文件有三个:index.html(主文件),white.css(白色背景配色方案css文件),black.css(黑色背景配色方案css文件)。
index.html文件代码如下:
<!DOCTYPE html>
<html>
<head>
<link rel='stylesheet' type='text/css' href='black.css' id="global-css">
<script
src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.10/angular.min.js"></script>
<script>
var myApp = angular.module('App', []);
myApp.factory('myFac', function() {
return {
changeTheme : function(themeFile) {
//根据ID定位加载css的元素,将其href修改为特定css文件
document.getElementById('global-css').setAttribute('href',
themeFile);
}
};
});
myApp.controller('AppController', function($scope, myFac) {
//如果是white主题,使用css文件white.css
$scope.whiteTheme = function() {
myFac.changeTheme('white.css');
}
//如果是black主题,使用css文件black.css
$scope.blackTheme = function() {
myFac.changeTheme('black.css');
}
});
</script>
</head>
<body ng-app='App' ng-controller='AppController'>
<button ng-click='blackTheme()'>black theme</button>
<button ng-click='whiteTheme()'>white theme</button>
<p class='p1'>test line 1</p>
<p class='p2'>test line 2</p>
</body>
</html>
black.css代码如下:
body
{
background-color:black;
}
.p1
{
color:red;
}
.p2{
color:blue;
}
white.css代码如下:
body
{
background-color:white;
}
index.html默认使用黑色背景配色方案。点击“white theme”按钮切换为白色背景配色方案,点击“black theme”按钮,切换成黑色背景配色方案。具体示例如下:
在浏览器中运行index.html截图如下:
查看网页源代码,可以看到调用的css文件是black.css:
点击“white theme”按钮,index.html改为白色背景配色方案,网页截图如下:
查看网页源代码,可以看到调用的css文件是white.css:
版权声明:本文为cs08211317dn原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。