Angularjs 事件指令 input 相关指令 和样式指令 DOM 操作指令详解

Angularjs 事件指令 input 相关指令 和样式指令
DOM 操作指令详解
学习要点:
1. AngularJs 事件指令
2. input 相关指令
3. 样式指令
4. DOM 操作指令
5. ngBind/ngBindHtml/ngBindTemplate 重点
6. ng-init ng-mode ng-model-options ng-controler

1. Angularjs 事件指令
自己研究:
ng-click/dbclick
ng-mousedown/up
ng-mouseenter/leave
ng-mousemove/over/out
ng-keydown/up/press
ng-focus/blur
ng-submit

重点讲述:
ng-selected
ng-change
ng-copy
ng-cut
ng-paste
ng-cloak 在 angular 中为我们提供了 ng-cloak 来实现纺织闪烁的方案,我们只需
要在需要的地方加上 ng-cloak。同时对于 bing 文字({{ express }} )我们也可以改为 ng-bind
来实现避免。

ng-non-bindable 如果我们就想要一个{{}} 这样的内容就可以使用 ng-clock

<input type="checkbox" ng-model="aaa">
<select>
<option>11111</option>
<option ng-selected="aaa">22222</option>
</select>
<input type="text" ng-change="bbb=‘hello‘" ng-model="bbb">{{bbb}}<br>
<input type="text" value="aasdassssssss" ng-paste="ccc=true">{{ccc}}

2. Angularjs input 相关指令
ng-disabled
ng-readonly
ng-checked
ng-value

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="../angular.min.js"></script>
</head>
<body>
<div ng-app="myApp">
<div ng-controller="firstController">
<input type="button" ng-value="text" ng-disabled="isDisabled">
<input type="text" value="{{text}}" ng-readonly="isDisabled">
<input type="checkbox" value="{{text}}" ng-checked="isDisabled">
</div>
</div>
<script type="text/javascript">
var app = angular.module(‘myApp‘,[]);
app.controller(‘firstController‘,[‘$scope‘,‘$interval‘,function($scope,$interval){
var iNow = 5;
$scope.text = iNow+‘秒‘;
$scope.isDisabled = true;
//setInterval -> $scope.$apply()
//$timeout $interval
var timer = $interval(function(){
iNow--;
$scope.text = iNow+‘秒‘;
if(iNow == 0){
$interval.cancel(timer);
$scope.text = ‘可以点击啦‘;
$scope.isDisabled = false;
}
},1000);
}]);
</script>
</body>
</html>

3. Angularjs 样式指令
ng-class
ng-style
ng-href
ng-src
ng-attr-(suffix) html 中属性可能有多了 angularjs 提供了一种通用的写法
如: ng-attr- href

<!DOCTYPE HTML>
<html ng-app="myApp">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
.red{ background:red;}
.yellow{ background:yellow;}
</style>
<script src="angular.min.js"></script>
<script>
var m1 = angular.module(‘myApp‘,[]);
m1.controller(‘Aaa‘,[‘$scope‘,function($scope){
$scope.text = ‘hello‘;
$scope.style = "{color:‘red‘,background:‘yellow‘}";
$scope.sClass = "{red:true,yellow:true}";
$scope.url = "http://www.baidu.com";
}]);
</script>
</head>
<body>
<div ng-controller="Aaa">
<div ng-class="{yellow:true}">{{text}}</div>
<div ng-class="{red:true}">{{text}}</div>
<div ng-class="{{sClass}}">{{text}}</div>
<div ng-style="{{style}}">{{text}}</div>
<a ng-href="{{url}}">aaaaaaa</a>
<a ng-attr-href="{{url}}" ng-attr-title="{{text}}" ng-attr-class=""
ng-attr-style="">aaaaaaa</a>
</div>
<script>
//alert(1);
</script>
</body>
</html>
4. Angularjs DOM 操作指令
ng-show display 隐藏显示
<div ng-show="bBtn">aaaaaaaaaaaa</div>
ng-if dom 操作
<div ng-if="bBtn">aaaaaaaaaaaa</div>
ng-switch
<div ng-switch on="bBtn">
<p ng-switch-default>默认的效果</p>
<p ng-switch-when="false">切换的效果</p>
</div>
ng-open
<details ng-open="bBtn">
<summary>Copyright 2011.</summary>
<p>All pages and graphics on this web site are the property of
W3School.</p>
</details>
5. Angularjs ngBind/ngBindHtml/ngBindTemplate/ ngInclude
ngBind 显示数据类似于 {{}}
ngBindTemplate 解决 ng-bind 中只能绑定一个的问题
ngBindHtml 解析 html 代码
ngInclude 加载外部页面
6. ng-init ng-mode ng-model-options ng-controler
ng-init
<script>
angular.module(‘initExample‘, [])
.controller(‘ExampleController‘, [‘$scope‘, function($scope)
{
$scope.list = [[‘a‘, ‘b‘], [‘c‘, ‘d‘]];
}]);
</script>
<div ng-controller="ExampleController">
<div ng-repeat="innerList in list" ng-init="outerIndex =
$index">
<div ng-repeat="value in innerList" ng-init="innerIndex =
$index">
<span
class="example-init">list[ {{outerIndex}} ][ {{innerIndex}} ] =
{{value}};</span>
</div>
</div>
</div>
ng-mode
<!DOCTYPE HTML>
<html ng-app="myApp">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
.red{ background:red;}
.yellow{ background:yellow;}
</style>
<script src="angular.min.js"></script>
<script>
/*var m1 = angular.module(‘myApp‘,[]);
m1.controller(‘Aaa‘,[‘$scope‘,function($scope){
$scope.text = ‘hello‘;
}]);*/
var m1 = angular.module(‘myApp‘,[]);
m1.controller(‘Aaa‘,[‘$scope‘,FnAaa]);
function FnAaa($scope){
}
FnAaa.prototype.num = ‘123‘;
FnAaa.prototype.text = ‘hello‘;
FnAaa.prototype.show = function(){
return ‘angularJS‘;
};
</script>
</head>
<body>
<!--<div ng-controller="Aaa">
<input type="text" ng-model="text" ng-model-options="{updateOn : ‘blur‘}">
<div>{{text}}</div>
</div>-->
<div ng-controller="FnAaa as a1">
<div>{{a1.text}}:{{a1.show()}}</div>
</div>
</body>
</html>
ng-model-options 控制双向事件绑定的时候 触发事件的方式
<div ng-controller="ExampleController">
<form name="userForm">
Name:
<input type="text" name="userName"
ng-model="user.name"
ng-model-options="{ updateOn: ‘blur‘ }"
ng-keyup="cancel($event)" /><br />
Other data:
<input type="text" ng-model="user.data" /><br />
</form>
<pre>user.name = <span ng-bind="user.name"></span></pre>
</div>
ng-controler

时间: 2024-10-24 05:17:40

Angularjs 事件指令 input 相关指令 和样式指令 DOM 操作指令详解的相关文章

AngularJS 事件指令/input相关指令/样式指令/DOM操作指令详解

1.AngularJS 事件指令 (1)ng-click 鼠标点击事件 [html] <button ng-click="count = count + 1" ng-init="count=0"> Increment  </button> <span>  count: {{count}}  </span> (2)ng-dblclick 鼠标双击事件 [html] <button ng-dblclick="

Android之TextView的样式类Span的使用详解

Android中的TextView是个显示文字的的UI类,在现实中的需求中,文字有各式各样的样式,TextView本身没有属性去设置实现,我们可以通过Android提供的 SpannableString类封装.Android提供了很多的Span的类去实现样式,这个样式都是继承自CharacterStyle类. 要想理解Span的具体使用,那肯定得了解SPan类群的构成,研究代码继承结构,深入的了解.理解,才能更好的使用它.我们来统计一下,最前端的可用功能的SPAN有:URLSpan.Clicka

Maven的相关问题(一)——settings.xml配置详解

工作中第一次正式接触maven,虽然之前在学习时有遇到过,但是对于maven的认识和理解确实太浅薄,仅仅局限于机械式的操,纸上得来终觉浅,绝知此事要躬行···古人诚不欺我也~ 下面先贴一个找到的一个非常详细的注解,链接:http://blog.csdn.net/mypop/article/details/6146686 1 <?xml version="1.0" encoding="UTF-8"?> 2 <settings xmlns="

每天五个java相关面试题(10)--java基础详解篇2

好勒好勒.一起加油 一.HashMap和Hashtable的区别. 答: HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable. HashMap允许将null作为一个entry的key或者value,而Hashtable不允许. HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey.因

摆脱DOM操作,从TodoMVC看angularJS

取代jQuery? 我很久之前便听说了angularJS的大名,之前的leader也经常感叹angularJS的设计如何如何精妙,可叹一直没有机会深入了解,国庆长假因为没钱出游,倒是可以对他做一个了解...... 根据之前的经验,就现有的前端项目,如果最初没有良好的设计,做到一定阶段一定会变得难以维护,就算最初有设计,变化无常的PM也会让你的项目BUG丛生. 一个页面的复杂程度不断的增加,依赖模块也会变得混乱,而其中最为头疼的就是页面级随心所欲的DOM操作了! MVC类的框架可以很好的解决以上问

AngularJS开发指南11:AngularJS的model,controller,view详解

model model这个词在AngularJS中,既可以表示一个(比如,一个叫做phones的model,它的值是一个包含多个phone的数组)对象,也可以表示应用中的整个数据模型,这取决于我们所讨论的AngularJS文档中的上下文. 在AngularJS中,一个模型就是AngularJS作用域对象中的任何一个可取的属性.属性的名字就是模型的标示符.它的值可以是任意的Javascript对象(包括数组和原始对象). 将Javascript对象变成模型的唯一要求是这个对象必须是AngularJ

WebView使用详解(二)——WebViewClient与常用事件监听

登录|注册     关闭 启舰 当乌龟有了梦想-- 目录视图 摘要视图 订阅 异步赠书:Kotlin领衔10本好书      免费直播:AI时代,机器学习如何入门?      程序员8月书讯      每周荐书:Java Web.Python极客编程(评论送书) WebView使用详解(二)--WebViewClient与常用事件监听 2016-05-28 11:24 20083人阅读 评论(13) 收藏 举报  分类: 5.andriod开发(148)  版权声明:本文为博主原创文章,未经博主

CSS样式表继承详解

最近在恶补css样式表的基础知识.上次研究了css样式表之冲突问题详解 .这次是对 css 继承 特性的学习. 什么是css 继承?要想了解css样式表的继承,我们先从文档树(HTML DOM)开始.文档树由HTML元素组成. 文档树和家族树类似,也有祖先.后代.父亲.孩子和兄弟^_^.这很容易理解吧,笔者在这里就不一一赘述了.希望深入了解的朋友请google之. 那么CSS样式表继承指的是,特定的CSS属性向下传递到子孙元素. 下面举个例子,有如下html代码片段: <p>CSS样式表<

jQuery 【事件】【dom 操作】

事件  hover( function(){},function(){})   --  鼠标移入移出事件   toggle(function(){},function(){},function(){},....)  -- 循环执行,花括号内各方法循环执行  对象.live("事件名",function(){});  -- 对未来创建的元素进行操作 -- btn1 的点击事件中创建 class="div2" 的 div 放到 id="div1" 的