#javascript #jquery #html #css #jquery-tocify-js
#javascript #jquery #HTML #css #jquery-tocify-js
Вопрос:
Я использую jQuery.tocify.js плагин javascript для программной генерации оглавления. Однако у меня возникла небольшая проблема. Способ работы плагина заключается в том, что он извлекает каждый h1
, h2
, h3
, и т.д. тег и создает вложенный список, соблюдая глубину.
Проблема, с которой я сталкиваюсь, заключается в том, что если у меня есть h2
с длинной строкой, форматирование в оглавлении получается «неправильным». В частности, первая строка элемента списка является вложенной, но содержимое передается как абзац:
Заголовок верхнего уровня
Дополнительный заголовок с
длинный заголовок
Еще один дополнительный заголовок
Извините за плохое приближение, но я надеюсь, что оно передает то, что я вижу.
Есть ли какой-либо способ настроить элементы списка так, чтобы отступ всего вторичного заголовка был одинаковой глубины, чтобы он получался (приблизительно) как:
Заголовок верхнего уровня
Дополнительный заголовок с
длинный заголовок
Вот пример сгенерированного оглавления (с длинным именем):
<ul id="tocify-header7" class="tocify-header nav nav-list">
<li class="tocify-item active" data-unique="the-fifth-(and-successful)-try" style="cursor: pointer;"><a>The Fifth (and Successful) Try</a></li></ul>
Похоже nav
, и nav-list
предполагается, что он поступает из Bootstrap, но я не уверен, что у Bootstrap3 даже есть nav-list
класс.
Редактировать: Да, похоже, что плагин несовместим с Bootstrap 3. Полагаю, я буду искать другой плагин.
Комментарии:
1. Боюсь, что без какого-либо HTML или CSS ваш вопрос остается без ответа. То, что вы хотите, — это поведение по умолчанию, поэтому я не уверен, что делает плагин: jsbin.com/tajateju/1/edit
2. Достаточно справедливо. Все это генерируется динамически. Позвольте мне посмотреть, что я могу найти.
3. Просмотрите его с помощью DOM-инспектора вашего браузера и просто скопируйте HTML. Я знаю, что инструменты разработчика Chrome позволяют вам это сделать.
Ответ №1:
Вы должны отображать привязки в виде блоков и устанавливать для них максимальную ширину. Это должно заставить их зацикливаться при закрытии, но сохранять все это с тем же отступом.