Я пишу приложение, в котором храню относительные ссылки на элементы как селектор CSS, подходящий для передачи в querySelector.Когда я хочу сохранить относительную ссылку на элемент «base», я хотел бы иметь селектор, который будет возвращать тот же элемент.
Что такое селектор идентичности для метода querySelector
метода Element
как определено в API селектора уровня 1 , который удовлетворяет следующим требованиям?
var identitySelector = "<this is the selector I want to know>"
for (int i = 0; i < document.all.length; i++) {
var elem = document.all[i];
if (elem !== elem.querySelector(identitySelector)) {
throw identitySelector + " is not the identity selector";
}
}
Обновление:
Поскольку этот селектор недоступен, я 'Я собираюсь обернуть мой вызов querySelector функцией, которая возвращает элемент контекста, если селектор равен псевдоклассу :root
.
var identitySelector = ":root"
var querySelectorProxy = function(elem, selector) {
return selector === ':root' ? elem: elem.querySelector(identitySelector);
}
for (int i = 0; i < document.all.length; i++) {
var elem = document.all[i];
if (elem !== querySelectorProxy(elem, selector)) {
throw identitySelector + " is not the identity selector";
}
}