Задать вопрос

Как получить содержимое HTML комментариев через querySelector?

Всем доброго времени суток.

Скажем, есть вот такой HTML
<html>
....
<body>
....
<сode id='someId'><!--{JSON OBJECT}--></сode>
</body>
</html>

Делаю следующее
const comment = document.querySelector('code[id^="someId"]').innerHTML  // comment = <!--{JSON OBJECT}-->


Не могу найти метода который вернет именно `{JSON OBJECT}` уже как строку. Можно по регулярке вырезать... Но может есть именно родное решение?
  • Вопрос задан
  • 389 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
https://jsfiddle.net/z26jyooL/

<div id="someId">
  <!-- COMMENT One-->
  <!-- COMMENT Two -->
  <!-- {"json": true} -->
</div>

<output></output>

let out = document.querySelector('output');
let el = document.querySelector('#someId');

for (let i = 0; i < el.childNodes.length; i++) {
  let child = el.childNodes[i];
  if (child.nodeType == 8) {
    console.log(child.textContent);
    out.innerHTML += ' <br>  ' + child.textContent;
  }
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@vintage
Вам поможет XPath и document.evaluate.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы