【问题标题】:Angularjs access this element in ng-click functionAngularjs 在 ng-click 函数中访问这个元素
【发布时间】:2014-10-05 05:59:56
【问题描述】:

this answer 中给出的,我们需要将 $event 对象传递给 ng-click 函数,并使用

$scope.setMaster = function(obj, $event){
    console.log($event.target);
}

虽然event.target 不是跨浏览器属性。为了克服这个问题,quirksmode 提出以下建议

function doSomething(e) {
    var targ;
    if (!e) var e = window.event;
    if (e.target) targ = e.target;
    else if (e.srcElement) targ = e.srcElement;
    if (targ.nodeType == 3) // defeat Safari bug
        targ = targ.parentNode;
}

还有其他/更好的方法来获取目标元素吗?就像我们使用 DOM/jQuery 方法绑定一样,我们可以使用this 关键字来引用被点击的元素。

请提出建议。

【问题讨论】:

    标签: javascript jquery angularjs this


    【解决方案1】:

    作为一个库,angularjs 会进行这种规范化,因此我们不需要自己编写浏览器特定的代码。它在库中处理。

    传递给点击处理程序的事件对象是规范化的,并且无论浏览器如何都将具有所述属性(假设库支持所述浏览器)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多