У меня есть следующая настраиваемая тег/директива:
<tile class="ng-scope gridster-item" tilevalue="1" gridster-item="tile" row="0" col = "0" ng-repeat="tile in selectedTiles"> </tile>
Я хотел сосредоточиться на этом элементе. Есть ли способ получить элемент по имени атрибута, чтобы я мог установить фокус?
С помощью простого javavascript вы можете использовать .querySelector
и .querySelectorAll
чтобы получить .querySelectorAll
элементы, как в CSS.
var element = document.querySelector('[class="ng-scope gridster-item"]')
var element = document.querySelector('[gridster-item="tile"]')
Затем вы можете использовать все, что хотите, с помощью element
.
Используйте document.querySelector
или document.querySelectorAll
(не требуется jQuery)
var elements = document.querySelectorAll("[gridster-item]");
или:
var elements = document.querySelectorAll("[gridster-item=tile]");
Установите фокус:
elements[0].focus();
querySelector
возвращает первый элемент, querySelectorAll
возвращает NodeList
.
как вы отметили jquery
, у вас есть много возможностей, если есть только один элемент с именем "tile", вы можете использовать имя элемента $("tile")
или $(".ng-scope.gridster-item")
основанный на классах.
В противном случае используйте любой атрибут с $("[attribute_name='attribute_value']")
Обратите внимание, что это может вернуть массив объекта. Чтобы получить сам элемент, используйте $("[attribute_name='attribute_value']")[0]
например.