#javascript #dom
#javascript #dom
Вопрос:
Я хочу составить обновленный список всех возможных элементов html. Как я знаю, все элементы являются производными от собственного интерфейса HTMLElement браузера. Мой вопрос в том, как я могу запросить производные элементы этого интерфейса, такие как HTMLParagraphElement и т.д…
Ответ №1:
Я хочу составить обновленный список всех возможных элементов html.
Затем прочитайте спецификацию.
Хотя вы можете перебрать все глобальные функции и протестировать их цепочки прототипов, это подскажет вам, для чего этот конкретный браузер имеет явную поддержку, включая элементы, которых больше нет в HTML, и не включая новые, которые браузер еще не добавил.
const element_creating_functions =
Object.getOwnPropertyNames(window).filter(name => {
try {
const func = window[name];
if (typeof func !== "function") {
return false;
}
return window.HTMLElement.isPrototypeOf(func);
} catch (e) {
// Some functions are sandboxed on Stacksnippets
return false;
}
}).sort();;
console.log(element_creating_functions);