//其實就是自定義指令?
因為我找不到這個監聽事件
//首先找到全局的angularjs
var myapps = angular.module("myapp");
//自定義指令repeatFinish ?這個指令名稱可以自定義但是在調用的時候要注意寫法 下面會有說明
//這里的$timeout下面會講
myapps.directive('repeatFinish',function($timeout){
//在調用到這個指令的時候執行
return{
//默認為A,C 就是參數和ClassName ?更多參數去看API
restrict:"A",
//這個方法在指令被編譯的時候運行
//這里的scope指ng-repeat的作用域
//element 是 jqlite對象
//attr指方法傳進來的參數集
link:function(scope,element,attr){
//如果渲染完成
//scope.$first==true 就是渲染開始 沒試過這個參數 嘻嘻
if(scope.$last==true){
//執行這個參數或方法
//這里因為最后一個last還在渲染中
? $timeout(function(){
?//所以等最后一個渲染完成再執行
? ? ? scope.$eval(attr.repeatFinish);
})
}
}
}
})
在html文檔中調用
//這里的elearr自己創建 嘻嘻
//注意到這里repeatFinish編程了repeat-finish
//因為h5和js轉化-號時會這樣,詳情查看駝峰法
//在控制器作用域調用
$scope.yourfunction=function(){
console.log("加宅ng-repeat完成");
//這時候就可以操作你的元素了
}
//我也是遇到這個問題在渲染完成前操作了元素,所以取不到對象,剛學angularJS可能有的地方理解錯了,幫忙指出來嘻嘻,互相學習嘻嘻,多多指教嘻嘻,