Найти li по :: значению маркера - PullRequest
0 голосов
/ 17 июня 2020

Я пишу javascript, чтобы разрешить ссылки на серию вложенных списков с различными наборами list-style-type значений, содержащих как элементы ul, так и ol. Ссылки имеют формат XX.XX.XX, где каждый последующий XX относится к следующему уровню списка.

Например, вот что IV.bi преобразовал бы в:

.l-upper-roman {
  list-style-type: upper-roman;
}

.l-lower-roman {
  list-style-type: lower-roman;
}

.l-lower-alpha {
  list-style-type: lower-alpha;
}
<ol id="outer-list" class="l-upper-roman">
  <li>not this</li>
  <li>not this either</li>
  <li>nope</li>
  <li>
    <ol class="l-lower-alpha">
      <li>this is not it</li>
      <li>
        <ol class="l-lower-roman">
          <li>This is the correct element!</li>
          <li>not me</li>
        </ol>
      </li>
      <li>wrong</li>
      <li>not it</li>
    </ol>
  </li>
  <li>wrong</li>
</ol>

В этом списке ссылка типа 4.2.1 будет недопустимой, потому что список содержит IV, а не 4.

Перемещение по списку элементов легко, но проблема заключается в том, чтобы попытаться найти точное значение ::marker данного li, чтобы проверить, совпадает ли оно.

Итак, мой вопрос: как мне найти значение ::marker для данного элемента li?

...