【问题标题】:Selecting the children of an element in an AngularJS directive在 AngularJS 指令中选择元素的子元素
【发布时间】:2014-07-09 23:17:49
【问题描述】:

我正在尝试将事件处理程序绑定到 AngularJS 指令中 link 函数中的 element 的子代。 Angular's documentation 指向 jQuery's docs,但 AngularJS 中的 .children() 方法似乎与 jQuery 不同。

console.log(element);
console.log(element.children());

控制台输出示例。

[div#anElement, context: div#anElement, jquery: "2.1.1", constructor: function, selector: "", toArray: function…]
 myDirective.js:23
[prevObject: jQuery.fn.init[1], context: div#anElement, jquery: "2.1.1", constructor: function, selector: ""…]
 myDirective.js:25

为什么这与 jQuery 的 .children() 方法的工作方式不同?

【问题讨论】:

  • 你在使用 Angular 的 jquery 吗?
  • @Jorg 是的,我正在使用 jQuery 和 AngularJS。
  • 看起来是一样的,除了 jquery 特定的属性:jsfiddle.net/9UQSH/2
  • 嘿@Jorg,你是对的,因为它们是相同的。我遇到了一个竞争条件,我试图选择尚未使用 ng-repeat 生成的子代。如果您想在下面发布您的答案,我会将其标记为正确。感谢您的帮助!

标签: jquery angularjs angularjs-directive children


【解决方案1】:

angular.element 使用 jQuery 选择器(如果可用),因此结果应该相同,但 jquery 特定属性除外:Fiddle

如果 jQuery 不可用,它会使用它自己的 jQlite,它会重新实现您已经引用的函数。

【讨论】:

    猜你喜欢
    • 2014-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-02
    相关资源
    最近更新 更多