Ich versuche, den Index des angeklickten Elements zu erhalten, aber ich bekomme -1
in der Konsole. Ich verwende Array.prototype
die indexOf
vom nodelist
Erhalte den Index des Klickelements
HTML zu erhalten:
<div ng-app='app' ng-controller='mainCtrl'>
<div app-click="">
<div ng-repeat="json in myJson">
<li>{{json}}</li>
</div>
</div>
</div>
JS:
.directive('appClick', function() {
return {
restrict: 'A',
scope: true,
controller: function($scope, $element) {
$element.bind("click",function(e){
var index = Array.prototype.indexOf.call($element.children(), e.target);
console.log(index);
});
}
}
});
Hätte darüber nachdenken sollen! Vielen Dank. – user4756836
Dies hat ein anderes Verhalten auf Tastendruck. Wenn ich will, dass die Eingabetaste das selbe Verhalten wie der Klick hat ... Ich bekomme undefiniert, wenn ich die Eingabe drücke, aber das richtige e.target, wenn ich klicke – user4756836
Wie hat ein li ein Tastendruck? – epascarello