Я сейчас играю с фреймворком AngularJS и наткнулся на проблему. Я сделал директиву, которая называется «войти». Он запускает функции на mouseenter
и mouseleave
. Я применил его как атрибут к элементам строки таблицы. Теперь он запускается для каждого дочернего элемента (всех столбцов и т. д.), но должен срабатывать только при наведении указателя мыши на строку таблицы.
Вот как выглядит моя директива:
myapp.directive('enter', function(){
return {
restrict: 'A', // link to attribute... default is A
link: function (scope, element){
element.bind('mouseenter',function() {
console.log('MOUSE ENTER: ' + scope.movie.title);
});
element.bind('mouseleave',function() {
console.log('LEAVE');
});
}
}
});
Вот пример: http://jsfiddle.net/dJGfd/1/
Для просмотра сообщений журнала необходимо открыть консоль Javascript.
Каков наилучший способ добиться желаемой функциональности в AngularJS? Я предпочитаю не использовать jQuery, если есть разумное решение AngularJS.