判断angular渲染页面完成

来源:互联网 发布:室内设计上海知乎 编辑:程序博客网 时间:2024/06/07 06:59

前些天写项目的时候,需要页面循环渲染请求到的数据后再执行函数,无论jQ还是原生js的入口函数都不行,虽说angular的生态系统比较完善,并不需要引用jQ来操作DOM元素。
言归正传,查资料发现:AnguarJs提供了一些对于Html进行加强的语义标签(directive),这些标签在浏览器加载完页面后被执行。

//var app 什么的自个写了哈app.directive('onRepeatFinishedRender', function ($timeout) {    return {        restrict: 'A',        link: function (scope, element, attr) {            if (scope.$last === true) {                $timeout(function () {                  scope.$emit('ngRepeatFinished', element);                });            }        }    };});$scope.$on("ngRepeatFinished", function (repeatFinishedEvent, element){    var repeatId = element.parent().attr("repeat-id");    //r1这个你随便写,不过要和父元素repeat-id属性一样    if(repeatId=="r1"){        //这里写程序块 你要执行的操作    } })

html:

<ul repeat-id="r1">    <li ng-repeat="item in data" on-repeat-finished-render>        ……    </li></ul>

随便总结下,不一定有用的喔,大伙可以一起交流嘛 (,,•́ . •̀,,)