[url]http://www.runoob.com/angularjs/angularjs-services.html[/url] angularjs教程
[url]http://www.runoob.com/try/try.php?filename=try_ng_bind_strings[/url] ng-bind="a"作用={{a}}引用参数
ng-bind用在元素上如<span ng-bind="firstName"></span>
ng-init对数据进行初始
--------------------------------------------------------------
自定义指令:返回一个模板
E 只限元素名使用
A 只限属性使用
C 只限类名使用
M 只限注释使用
---------------------------------------
表单验证:
----------------------------------------------------------
AngularJS 过滤器
---------------------------------------------------------------------------------------
服务:
$location $http $timeout 访问在规定的毫秒数后执行指定函数。$interval 访问在指定的周期(以毫秒计)来调用函数或计算表达式,每隔一段时间,调用一次该函数
-------------------------------------------------
创建自定义服务:服务里写具体的函数逻辑 ,注:自定义的服务引用时不需要加$
-----------------------------------
$odd $even 索引的奇偶
跨域 HTTP 请求:header("Access-Control-Allow-Origin: *");
在我们的实例中,所有 AngularJS 库都在 HTML 文档的头部载入。
novalidate 属性是在 HTML5 中新增的。禁用了使用浏览器的默认验证
----------------------------------------
------------------------
angularjs 多级菜单
------------------------------------------------------------------------------------------
$emit只能向parent controller传递event与data
$broadcast只能向child controller传递event与data
$on用于接收event与data
事件属性 目的
[url]http://www.runoob.com/try/try.php?filename=try_ng_bind_strings[/url] ng-bind="a"作用={{a}}引用参数
ng-bind用在元素上如<span ng-bind="firstName"></span>
ng-init对数据进行初始
类似于 JavaScript 表达式,AngularJS 表达式可以包含字母,操作符,变量。
与 JavaScript 表达式不同,AngularJS 表达式可以写在 HTML 中。
与 JavaScript 表达式不同,AngularJS 表达式不支持条件判断,循环及异常。
与 JavaScript 表达式不同,AngularJS 表达式支持过滤器
ng-model 双向数据绑定
ng-repeat 指令会重复一个 HTML 元素
ng-options="x for x in names" 下选框
使用 ng-options 指令,选择的值是一个对象:
<select ng-options="">
</select>等价于
<select>
<option ng-repeat=""></option>
</select>
ng-repeat 有局限性,选择的值是一个字符串:
<button ng-disabled="mySwitch">点我!</button>
ng-show与ng-disabled
ng-hide
ng-click
ng-include
--------------------------------------------------------------
自定义指令:返回一个模板
app.directive("runoobDirective", function() {
return {
restrict : "A", <!--默认是EA-->
template : "<h1>自定义指令!</h1>" <!--template是该指令返回的内容-->
};
});
E 只限元素名使用
A 只限属性使用
C 只限类名使用
M 只限注释使用
---------------------------------------
表单验证:
ng-model 指令可以为应用数据提供状态值(invalid, dirty, touched, error):
{{myForm.myAddress.$valid}} (如果输入的值是合法的则为 true)
{{myForm.myAddress.$dirty}} (如果值改变则为 true)。</p>
{{myForm.myAddress.$touched}} (如果通过触屏点击则为 true)
myAddress.$error.email email错误则为true
myForm.email.$error.required,需要的字段为空则为true
$dirty 表单有填写记录
$valid 字段内容合法的
$invalid 字段内容是非法的
$pristine 表单没有填写记录
----------------------------------------------------------
AngularJS 过滤器
currency 格式化数字为货币格式。
filter 从数组项中选择一个子集。
lowercase 格式化字符串为小写。
orderBy 根据某个表达式排列数组。
uppercase 格式化字符串为大写。
---------------------------------------------------------------------------------------
服务:
$location $http $timeout 访问在规定的毫秒数后执行指定函数。$interval 访问在指定的周期(以毫秒计)来调用函数或计算表达式,每隔一段时间,调用一次该函数
-------------------------------------------------
创建自定义服务:服务里写具体的函数逻辑 ,注:自定义的服务引用时不需要加$
app.service('hexafy', function() {
this.myFunc = function (x) {
return x.toString(16);
}
});
app.controller('myCtrl', function($scope, hexafy) {
$scope.hex = hexafy.myFunc(255);
});
-----------------------------------
$odd $even 索引的奇偶
跨域 HTTP 请求:header("Access-Control-Allow-Origin: *");
在我们的实例中,所有 AngularJS 库都在 HTML 文档的头部载入。
novalidate 属性是在 HTML5 中新增的。禁用了使用浏览器的默认验证
----------------------------------------
AngularJS 全局 API
angular.lowercase() 转换字符串为小写
angular.uppercase() 转换字符串为大写
angular.isString() 判断给定的对象是否为字符串,如果是返回 true。
angular.isNumber() 判断给定的对象是否为数字,如果是返回 true。
------------------------
http://www.open-open.com/lib/view/open1416878937309.html
angularjs 多级菜单
------------------------------------------------------------------------------------------
$emit只能向parent controller传递event与data
$broadcast只能向child controller传递event与data
$on用于接收event与data
<div ng-controller="ParentCtrl"> <!--父级-->
<div ng-controller="SelfCtrl"> <!--自己-->
<a ng-click="click()">click me</a>
<div ng-controller="ChildCtrl"></div> <!--子级-->
</div>
<div ng-controller="BroCtrl"></div> <!--平级-->
</div>
事件属性 目的
event.targetScope 发出或者传播原始事件的作用域
event.currentScope 目前正在处理的事件的作用域
event.name 事件名称
event.stopPropagation() 一个防止事件进一步传播(冒泡/捕获)的函数(这只适用于使用`$emit`发出的事件)
event.preventDefault() 这个方法实际上不会做什么事,但是会设置`defaultPrevented`为true。直到事件监听器的实现者采取行动之前它才会检查`defaultPrevented`的值。
event.defaultPrevented 如果调用了`preventDefault`则为true