app.directive("ishello", function () {
return {
//element "A" 属性 "C" Class A的调用方法就是在某一个标签里面写directive定义的属性名,E的调用方法就是将template替换到元素里面,C的调用方法就是class="ishello"
restrict: 'E',
replace: true,//替换掉directive的自定义标签
template: '',//主要写HTML元素
//link函数主要用于操作dom元素,给dom元素绑定事件和监听.
link: function (scope, element, attr, ctrl, linker) {
//scope:指令所在的作用域
//element:指令元素的封装,可以调用angular封装的简装jq方法和属性
//attr:指令元素的属性的集合
//ctrl:用于调用其他指令的方法,指令之间的互相通信使用,需要配合require
//linker:用于transClude里面嵌入的内容
}
}
})
如果是e的话,直接可以写为
app.directive("leave", function () {
return function (scope, element, attrs) {
element.bind('mouseleave', function () {
element.removeClass("alert-box");
})
}
})