2016-09-23 2 views
-1

У меня есть следующий код:Получить конкретный элемент в AngularJs

angular.element ('div');

, который возвращает объект всех элементов div на странице. Как я могу получить индекс определенного div.one в этом объекте?

Я пробовал indexOf(), но он не работает на объектах.

https://jsfiddle.net/quodm9mx/

+1

ответил здесь http://stackoverflow.com/questions/23609171/how-to-get-element-by-classname-or-id –

ответ

1

Вы можете попробовать

angular.element(document.querySelector('.one')); 

var myApp = angular.module('myApp',[]); 
 

 
myApp.controller('GreetingController', ['$scope', function($scope) { 
 
    console.log($(angular.element(document.querySelector('.one'))).index());      
 
     
 
     console.log(angular.element(document.querySelector('.one'))); 
 
}]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<body ng-app="myApp" ng-controller="GreetingController"> 
 
    <div></div> 
 
    <div></div> 
 
    <div></div> 
 
    <div class="one"></div> 
 
    <div></div> 
 
    <div></div> 
 
    <div></div> 
 
    <div></div> 
 
    <div></div> 
 
    <div></div> 
 
</div>

+0

Спасибо, это именно то, что мне нужно :) – gespinha

+0

Спасибо за проголосовать, можете ли вы обосновывать? –

-1

Как то, что я читаю в Chrome, вы не можете селекторов использования с jqLite:

Uncaught Error: [jqLite:nosel] Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element

Но если вы прочтете эту ссылку, она сообщит вам, что если jQuery доступен (вы включили jQuery на свою страницу), angular.element станет псевдонимом селектора jQuery ($). Поэтому включите jQuery.

+0

Спасибо за -1 ... – matiaslauriti

Смежные вопросы