LINUX.ORG.RU

Просьба собрать рабочий пример «include для статичного html»

 ,


2

3

Я плакал тут:
Есть ли аналог include для статики?

Суть:
- Есть россыпь статичных страничек.
- Используется только JS (jq.3.2.1.min.js, jq.fb.3.3.min.js, iscroll.min.js, isotope.js).
- Сам хтмл предельно простой (H, p, br, li, ul - чуть ли не весь набор).
- В каждой из 10-20-50 страничек все одинаковое кроме содержимого <H1>, <p> и т.п.

Само собой хочется, чтоб все, что одинаковое, было вынесено в один хэдер\футер, и было подключено к страничке. Чтоб вносить правки не бешеной копипастой.

На условном рнр я умею include.

Суть задачи в том, что необходим абсолютный отказ от всего «серверного». Оно должно работать в любом актуальном браузере (текущие дефолтные: фф, хром, оба ишака, мобильные на иоси и андроиде). Без сервера вообще (!). На дефолте, не требу какие-то разрешения и т.п.

Сразу скажу, что текущие странички, если их собрать руками - работают во всех этих браузерах. Т.е. это возможно.

В теме по ссылке выше мне советовали много разного
- Что-то я тупо не осилил (или не пытался приложить усилия).
- Что-то работало в одном браузере, но не работало в другом.

Еще есть вариант использовать условный wget, выкачивая все содержимое с сервера и сохраняя локально. Это оставляю как крайний вариант.

Перемещено leave из job



Последнее исправление: leave (всего исправлений: 1)
Ответ на: комментарий от deadNightTiger

Походу счастье наступило!

Пока (глаза не вытекают еще) фотки ковыряю. Позже детально все проверю. Походу с меня причитается.

dk-
() автор топика
Ответ на: комментарий от deadNightTiger

Блин. Почти начал хлопать в ладоши. Почти лучшее решение. Но не прокатило.

Странно. Подключаю файлом вот такое:

<nav id="mp-menu" class="mp-menu">

	<div id="navbutton" class="icn-menu-100"></div>

	<div id="scroll-nav" class="scrollwrap">
		<div class="scroller" onmousedown="return false">

			<br/><br/>
			<ul>
				<li><a href="001-1.html">А Ж.И.</a></li>
				<li><a href="002-1.html">А Н.И.</a></li>
				<li><a href="003-1.html">А Л.Г.</a></li>
				<li><a href="004-1.html">А Л.Я.</a></li>
				<li><a href="007-1.html">Б Н.В.</a></li>
				<li><a href="#"> -- </a></li>
			</ul>
			<br/><br/>

		</div>
	</div>
</nav -->


Т.е. ничего криминального.
Оно даже подключается. Эта менюшка рисуется на странице. Страница собрана корректно. Все на месте, цсс на месте.


Но всей собранной странце не работает скрол!
Если блок выше вставить напрямую, вместо <main data-include=«main.html»></main>, то скролл «чинится».

Похоже, обезьянья копипаста - мое.

dk-
() автор топика
Ответ на: комментарий от dimon555

Никогда не поздно освоить букварь.

dk-
() автор топика
Ответ на: комментарий от dk-

Может, твои скрипты не находят нужные элементы, потому что выполняются слишком рано? Тут надо смотреть, как они подключены и сделать правильный порядок.

deadNightTiger ★★★★★
()

Тебе же уже советовали - бери какой-нибудь HTML препроцессор для статической генерации сайта. Второй возможный путь - Server Side Includes - гуглить по запросу SSI nginx, но моя лично рекомендация освоить темплейты в кедди, крутая вещь, не пожалей время и глянь:

https://caddyserver.com/docs/template-actions

menangen ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.