-
[郑州|荣耀师兄]JS-芦宇0
app.directive("rotate",function () {
return{
restrict:"A",
link:function (scope,element) {
element.bind("click",function () {
if(element.hasClass("rotate45") == false){
element.addClass("rotate45")
element.removeClass("rotate-45")
}else {
element.removeClass("rotate45")
element.addClass("rotate-45")
}
})
}
}
});自定义指令是angular非常强大的功能,可以使你自定义标签属性等等
使用方法是返回一个对象
restrict属性决定该指令类型
E:element A:attribute M:comment C: class
link里面可以使用操作dom,angualrjs自带jqLite语法,可以了解一下
template:插入的内容
编辑于2018-09-23 -
[北京|结业弟子]JS-肖明明0
调用angular.Module对象的directive(name, directiveFactory)方法即可添加一个自定义指令。该方法的第一个参数指定自定义指令的名称。第二个参数directiveFactory是一个函数,该函数返回一个js对象,负责实现自定义函数的行为,该js对象支持如下属性:
template: 指定自定义指令的模板内容,自定义指令将会被替换成该属性所指定的HTML模板
templateUrl: 同上功能大致相同
restrict: 指定自定义指令适合的使用方式,元素(E),属性(A),样式(C),注释(M),默认值EA
replace: 设为true,则对应的HTML将会完全替换指定该指令的元素
scope: 设置标签的scope行为
link: 制定一个函数,该函数通常用于为DOM元素绑定事件处理函数
compile: 制定一个函数,该函数通常修改目标DOM元素
controller: 用于分配一个函数
require: 用于指定,当一个自定义指令需要调用另一个自定义指令的函数时依赖的指令
priority: 指定指令的优先级
terminal: 设为true,则同一元素的其他指令优先级高于本指令,则其他指令将停止执行
transclude: 设为true,则其可用于将原始元素的内容嵌入到自定义指令的模板中
编辑于2019-08-24
- 去第 页