Angular指令链接方法将元素作为对象

时间:2013-08-24 23:21:14

标签: javascript angularjs mootools

这是我的Angular代码:

angular.module('player', [])
.directive('playButton', function() {
    return {
        restrict: 'A',
                    /* I want to get the element parameter bellow as HTMl, 
                    not an object with an element stored within.
                    I don't want to access the HTML element as element[0]*/
        link: function($scope, /* this parameter -> */ element, attr) {
            console.log(typeof(element));
            // element[0].addEvent('click', function() {
            //  console.log('Moo!');
            // });
        }
    }
})

我想要实现的是将链接方法中的元素参数作为html获取,以便我可以使用MooTools操作它。有没有办法阻止在元素变量之后使用[0]?

1 个答案:

答案 0 :(得分:5)

否。 Angular返回jQlite个对象。因此,像jQuery一样,要选择当前的html元素,您需要使用element[0]。另一种方法是将变量分配给element[0]

var elm = element[0];

elm.addEvent('click', function() {
     console.log('Moo!');
 });