最近,开始学习AngularJS。

开始记录学习AngularJS的过程,从一些很简单的知识点开始。

习惯先从实际应用的指令开始,再从应用中去体会AngularJS的优缺点、使用的场景等。

之前一直希望能在学的过程中,逐步写出一个有设计感的web页面成果,

但发现,有点困难,反而在样式等花的时间多,学AngularJS的时间少了。

所以最后决定写一些简单的范例就可以了

第一篇,样式相关的指令。

  1. ng-Class

在angularJS中可利用一下三种方法操作class:

A、scope变量绑定

这里为class,不能用ng-class

实现功能:设置字体大小

<div class="{{means_1}}">scope变量绑定(不建议使用)</div>
<script type="text/javascript">
var app = angular.module('MyDemo', []);
app.controller('MyCtrl',function($scope) {
$scope.means_1="class_1";
});
</script>

   B、字符串数组形式:

       boolclass=true 则显示 class_true 的样式

boolclass=false则显示class_false的样式

功能实现:点击【样式切换】可切换字体样式

 <div ng-class="{true:'class_true',false:'class_false'}[boolclass]">字符串数组形式</div>
<input type="button" value="样式切换" ng-click="changeclass();" name="">
<script type="text/javascript">
var app = angular.module('MyDemo', []);
app.controller('MyCtrl',function($scope) {
$scope.boolclass=false;
$scope.changeclass=function(){
var name=$scope.boolclass;
var change=name==false?true:false;
$scope.boolclass=change;
};
});
</script>

C、对象key/value处理

    class_error、class_warn:样式

    error、warning:变量

    error为True则增加class_error样式,为false则删除class_error样式,warning同理

功能实现:点击【增/删错误样式】可增/删字体的错误样式,点击【增/删警告样式】可增/删字体的警告样式

<strong>第三种方式:</strong>
<div ng-class="{class_error:error,class_warn:warning}">对象key/value处理</div>
<div><input type="button" value="增/删错误样式" ng-click="AddError();" name="">
<input type="button" value="增/删警告样式" ng-click="AddWarn();" name=""></div>
<script type="text/javascript">
var app = angular.module('MyDemo', []);
app.controller('MyCtrl',function($scope) {
$scope.error=false;
$scope.warning=false;
$scope.AddError=function(){
var name=$scope.error;
var change=(name==false?true:false);
$scope.error=change;
};
$scope.AddWarn=function(){
var name=$scope.warning;
var change=(name==false?true:false);
$scope.warning=change;
};
}); </script>

2、ng-class-odd、ng-class-even

使用方式与ng-class相似,分别是在奇数列和偶数列对应的类,与ng-repeat配合使用

功能实现:点击【样式切换】可切换奇偶行样式

<strong>ng-class-odd、ng-class-even</strong>
<table>
<tr ng-repeat="x in records" ng-class-odd="{true:'class_true',false:'class_false'}[boolclass]"
ng-class-even="{false:'class_true',true:'class_false'}[boolclass]">
<td>{{x.Name}}</td>
<td>{{x.Country}}</td>
</tr>
</table>
<input type="button" value="样式切换" ng-click="changeclass();" name="">
<script type="text/javascript">
var app = angular.module('MyDemo', []);
app.controller('MyCtrl',function($scope) {
$scope.records = [
{
"Name" : "Alfreds Futterkiste",
"Country" : "Germany"
},
{
"Name" : "Berglunds snabbk",
"Country" : "Sweden"
},
{
"Name" : "Centro comercial Moctezuma",
"Country" : "Mexico"
},
{
"Name" : "Ernst Handel",
"Country" : "Austria"
}
];
$scope.boolclass=false;
$scope.changeclass=function(){
var name=$scope.boolclass;
var change=(name==false?true:false);
$scope.boolclass=change;
};
});
</script>

3、ng-style

ng-style用来绑定元素的css样式,其表达式的返回值为一个js对象,键为css样式名

功能实现:设置字体样式

<strong>ng-style</strong>
<div ng-style="{color:'red'}">ng-style测试</div>
<div ng-style="style">ng-style测试</div>
var app = angular.module('MyDemo', []);
app.controller('MyCtrl',function($scope) {
$scope.style = {color:'blue'}; 
});

4、ng-show,ng-hide

ng-show和ng-hide的值为boolean类型的表达式,当值为true时,对应的show或hide生效。

功能实现:选中checkbox,显示字体

<strong>ng-show、ng-hide</strong>
前端技术显示: <input type="checkbox" ng-model="IsCheck">
<div ng-show="IsCheck">
<h1>Hello World!~</h1>
<p>js,angularjs,html,css,nodejs,jquery</p>
</div>

【AnjularJS系列1 】— 样式相关的指令的更多相关文章

  1. AnjularJS系列1 —— 样式相关的指令

    最近,开始学习AngularJS. 开始记录学习AngularJS的过程,从一些很简单的知识点开始. 习惯先从实际应用的指令开始,再从应用中去体会AngularJS的优缺点.使用的场景等. 之前一直希 ...

  2. Vue 系列之 样式相关

    Class 与 Style 绑定 动态修改元素样式 <head> <meta charset="utf-8" /> <meta http-equiv= ...

  3. Vue基础01vue的基本示例,vue的双向数据绑定,vue中常见的几种用法,vue相关常见指令

    自学vue框架,每天记录重要的知识点,与大家分享!有不足之处,希望大家指正. 本篇将讲述:vue的基本示例,vue的双向数据绑定,vue中常见的几种用法,vue相关常见指令 前期学习基础,使用vue. ...

  4. Erlang 虚拟机 BEAM 指令集之内存管理相关的指令

    翻看 BEAM 虚拟机指令集的时候(在编译器源码目录下:lib/compiler/src/genop.tab),会发现有一些和内存分配/解除分配相关的指令,如下所示: allocate StackNe ...

  5. 韩顺平细说Servlet视频系列之tom相关内容

    韩顺平细说Servlet视频系列之tom相关内容 tomcat部署项目操作(注意:6.0版本以后的支持该操作,5.x版本需要另外配置?待验证!) 项目发布到tomcat的webapps文件下,然后启动 ...

  6. 【转】Reflector、reflexil、De4Dot、IL相关操作指令合集

    PS:CTRL+F 输入你需要的内容,可以快速查找页面上的内容. 名称 说明 Add 将两个值相加并将结果推送到计算堆栈上. Add.Ovf 将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上. ...

  7. Vue Cli 中使用 Karma / Chrome 执行样式相关单元测试

    在 GearCase 开源项目 中,我使用了 Vue Cli 的默认测试框架.因此和样式相关的东西,都无法进行测试.因为它并不类似于无头浏览器,而是存在于虚拟内存之中. 现状 在如下 button.s ...

  8. css基础-css选择器和css文本样式相关

    css基础-css选择器和css文本样式相关: 使用link链入外部样式,页面加载时会同时加载样式 @import url(“*.css”);使用导入式,页面加载完后,才会加载样式 链接伪类的顺序 : ...

  9. 痞子衡嵌入式:浅谈i.MXRT1xxx系列MCU时钟相关功能引脚的作用

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1xxx系列MCU时钟相关功能引脚作用. 如果我们从一颗 MCU 芯片的引脚分类来看芯片功能,大概可以分为三大类:电源.时钟 ...

随机推荐

  1. React router内是如何做到监听history改变的

    问题背景 今天面试的时候,被问到这么个问题.在html5的history情况下,pushstate和replacestate是无法触发pushstate的事件的,那么他是怎么做到正确的监听呢?我当时给 ...

  2. javaweb 之 工具类UUIDUtils

    借用一下百度百科的解释,来看一下UUID是什么. UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Ope ...

  3. c# rc4算法,加密解密类

    rc4算法,原理,以密匙生成256位的密匙流,然后以车轮式滚过源数据异或加密. /* * 由SharpDevelop创建. * 用户: YISH * 日期: 04/04/2015 * 时间: 03:0 ...

  4. python写的爬虫工具,抓取行政村的信息并写入到hbase里

    python的版本是2.7.10,使用了两个第三方模块bs4和happybase,可以通过pip直接安装. 1.logger利用python自带的logging模块配置了一个简单的日志输出 2.get ...

  5. 禁止浏览器缓存input值

    如果不想让浏览器缓存input的值,有2种方法: 方法一: 在不想使用缓存的input中添加 autocomplete="off"; <input type="te ...

  6. python web开发 编写web框架

    参考链接:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143233900 ...

  7. 支持Openflow 1.3的wireshark插件安装教程

    目前为止,我们使用openflow wiki里提供的minient镜像里集成的wireshark只支持openflow1.0,我们通过wireshark上 菜单 help-->about wir ...

  8. 数人云CTO解读Docker 1.12和金融业容器化

    7月29日 数人云 在上海举办金融沙龙,邀请上交所和近二十家来自银行.保险.证券的IT技术专家一同探讨容器技术在金融业中的最佳实践.数人云CTO肖德时在会上将传统金融行业通过容器可以解决的四大问题做了 ...

  9. FastDFS 实现图片上传_01

    一.jar 包 jar包下载:https://pan.baidu.com/s/1nwkAHU5 密码:tlv6 或者 下载工程,安装到 maven 本地仓库 工程下载:https://pan.baid ...

  10. 彻底理解tomcat是怎样多线程处理http请求并将代码执行到controller里的的

    彻底理解tomcat是怎样多线程处理http请求并将代码执行到controller里的的 1.线程池,thread = threadPool.getThread(),thread.executeHtt ...