我有以下自定义标记/指令:
<tile class="ng-scope gridster-item" tilevalue="1" gridster-item="tile" row="0" col = "0" ng-repeat="tile in selectedTiles"> </tile>
我想把重点放在这个元素上。有没有办法按属性名称获取元素,以便我可以设置焦点?
答案 0 :(得分:0)
使用普通的javavascript,您可以使用.querySelector
和.querySelectorAll
来获取所需的元素,就像在CSS中一样。
var element = document.querySelector('[class="ng-scope gridster-item"]')
var element = document.querySelector('[gridster-item="tile"]')
然后,您可以element
随意使用任何内容。
答案 1 :(得分:0)
当您标记jquery
时,您有很多可能性,如果只有一个名为“tile”的元素,您可以使用元素名称$("tile")
或$(".ng-scope.gridster-item")
基于类。
否则,请使用$("[attribute_name='attribute_value']")
注意这可以返回一个对象数组。要获取元素本身,请使用$("[attribute_name='attribute_value']")[0]
。
答案 2 :(得分:0)
使用document.querySelector
或document.querySelectorAll
(不需要jQuery)
var elements = document.querySelectorAll("[gridster-item]");
或:
var elements = document.querySelectorAll("[gridster-item=tile]");
设置焦点:
elements[0].focus();
querySelector
返回第一个元素,querySelectorAll
返回类似数组的NodeList
。