当前位置: 首页 > 面试题库 >

ng-repeat完成事件

景辰钊
2023-03-14
问题内容

我想用表调用一些针对div的jQuery函数。该表填充了ng-repeat

当我打电话时

$(document).ready()

我没有结果。

$scope.$on('$viewContentLoaded', myFunc);

没有帮助。

ng重复填充完成后,有什么方法可以执行功能?我已经阅读了有关使用custom的建议directive,但是我不知道如何在ng-
repeat和div中使用它。


问题答案:

确实,您应该使用指令,并且ng-
Repeat循环的末尾没有事件关联(因为每个元素都是单独构造的,并且具有自己的事件)。但是a)您可能只需要使用指令,b)您可以使用一些特定于ng-
Repeat的属性来创建“ on ngRepeat完成”事件。

具体来说,如果您只想在整个表中设置事件样式/添加事件,则可以在包含所有ngRepeat元素的指令中使用。另一方面,如果要具体处理每个元素,则可以在ngRepeat中使用指令,该指令将在创建每个元素后起作用。

然后,还有$index$first$middle$last属性,你可以用它来触发事件。因此,对于此HTML:

<div ng-controller="Ctrl" my-main-directive>
  <div ng-repeat="thing in things" my-repeat-directive>
    thing {{thing}}
  </div>
</div>

您可以像这样使用指令:

angular.module('myApp', [])
.directive('myRepeatDirective', function() {
  return function(scope, element, attrs) {
    angular.element(element).css('color','blue');
    if (scope.$last){
      window.alert("im the last!");
    }
  };
})
.directive('myMainDirective', function() {
  return function(scope, element, attrs) {
    angular.element(element).css('border','5px solid red');
  };
});

在此Plunker中查看它的实际操作。希望能帮助到你!



 类似资料:
  • 问题内容: 我想用表调用一些针对div的jQuery函数。该表中填充了。 当我打电话时 我没有结果也 没有帮助。 ng重复填充完成后,有什么方法可以执行功能?我已经阅读了有关使用custom的建议,但是我不知道如何在ng-repeat和div中使用它。 问题答案: 确实,您应该使用指令,并且没有与ng-Repeat循环的结尾相关的事件(因为每个元素都是单独构造的,并且具有自己的事件)。但是a)使用

  • 问题内容: 我们有一个大型模型,ng- repeat需要几秒钟的时间才能将模型中的所有项目绑定到表单。我们想展示一个微调器,它正在发生。绑定完成时是否会触发某些事件,以便我们知道何时隐藏微调器? 问题答案: Plunkr:http://plnkr.co/edit/GzzTW4?p = preview 使用如果您使用的是1.2使用的微调 在指令中,使用$ last确定渲染是否完成,然后更改定义了ng

  • 问题内容: 我试图实现的基本上是“重复完成渲染”处理程序。我能够检测到何时完成,但是我不知道如何从中触发功能。 检查小提琴:http : //jsfiddle.net/paulocoelho/BsMqq/3/ JS 的HTML 答 :从finishmove的工作提琴:http : //jsfiddle.net/paulocoelho/BsMqq/4/ 问题答案: 请注意,我没有使用,而是将其包装在

  • 问题内容: 在遍历数据后,我遇到一些有关DOM操作的问题。 我们有一个与数据绑定并且可以正常工作的jQuery滑块插件,但是当使用时,我们必须将其初始化包装起来以使其起作用—现在甚至不起作用。 我认为使用是不可靠的,这将导致错误的修复。在jQuery中,我可以使用-这很可靠,但是使用似乎也不起作用。 调用了Slider指令,但由于没有将图像加载到DOM中而无法获得滑块中图像的高度-导致滑块的计算高

  • 问题内容: 嗨,我有一个简单的ng-repeat-start和end用例,并且工作正常,当我想添加一个内部ng-repeat时出现了问题。这是我的代码 内部ng-repeat到td元素中不起作用,在检查html源代码时看到ngRepeat注​​释,但未创建td元素。 我的丑陋的解决方法(假设我知道该向量的大小)是: 问题答案: 从那时起,我不确定是否使用角度1.1.6,并且在1.1.5或1.0.7

  • 问题内容: 我试图了解over 的意义。角度文档提供了以下示例 但是,使用, 有人可以解释。的意义吗?谢谢。 问题答案: 这两个指令的含义相似:它们重复HTML标记。所不同的只是,在您的帮助下,您可以重复几个标签,从标签开始于,再到完成于。 例如,您有下一个代码: 因此,现在我们可以为这些代码添加2个指令。 与: 与和: 因此,现在您可以看到,在第一种情况下,仅使用指令重复,但是在第二种情况下,您