From 6b23d42930658f5b8bf20a2c3a32f6a516fa8976 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BB=91?= <1395348685z@gmail.com> Date: Thu, 1 Apr 2021 15:44:51 +0800 Subject: [PATCH] Separate inline scripts and styles into single files (#226) --- layout/_layout.njk | 5 +- layout/_partials/comments.njk | 48 +------------------ layout/_partials/footer.njk | 6 +-- layout/_partials/head/head-unique.njk | 22 +++++---- layout/_partials/head/head.njk | 2 +- layout/_partials/page/schedule.njk | 3 -- layout/_partials/post/post-meta.njk | 2 +- layout/_scripts/index.njk | 2 +- layout/_scripts/noscript.njk | 34 ------------- scripts/filters/minify.js | 8 ++++ scripts/helpers/next-config.js | 7 +-- scripts/tags/link-grid.js | 2 +- .../_common/components/post/post-header.styl | 6 +++ source/css/_common/outline/footer/index.styl | 22 +++++++++ .../_common/scaffolding/tags/link-grid.styl | 3 -- source/css/noscript.styl | 30 ++++++++++++ source/js/comments-buttons.js | 25 ++++++++++ source/js/comments.js | 21 ++++++++ source/js/load-config.js | 15 ++++++ layout/_scripts/pjax.njk => source/js/pjax.js | 14 +++--- test/tags/link-grid.js | 4 +- 21 files changed, 164 insertions(+), 117 deletions(-) delete mode 100644 layout/_scripts/noscript.njk create mode 100644 source/css/noscript.styl create mode 100644 source/js/comments-buttons.js create mode 100644 source/js/comments.js create mode 100644 source/js/load-config.js rename layout/_scripts/pjax.njk => source/js/pjax.js (80%) diff --git a/layout/_layout.njk b/layout/_layout.njk index 5507cfb..82b01bb 100644 --- a/layout/_layout.njk +++ b/layout/_layout.njk @@ -3,9 +3,12 @@ {{ partial('_partials/head/head.njk', {}, {cache: theme.cache.enable}) }} {%- include '_partials/head/head-unique.njk' -%} + {{- next_js('load-config.js', true) }} {% block title %}{% endblock %} {{ partial('_third-party/analytics/index.njk', {}, {cache: theme.cache.enable}) }} - {{ partial('_scripts/noscript.njk', {}, {cache: theme.cache.enable}) }} + diff --git a/layout/_partials/comments.njk b/layout/_partials/comments.njk index 030b383..0d5a494 100644 --- a/layout/_partials/comments.njk +++ b/layout/_partials/comments.njk @@ -14,31 +14,7 @@ {{ partial(inject_item.layout, inject_item.locals, inject_item.options) }} {%- endfor %} - - (function() { - const commentButton = document.querySelectorAll('.comment-button'); - commentButton.forEach(element => { - const commentClass = element.classList[2]; - element.addEventListener('click', () => { - commentButton.forEach(active => active.classList.toggle('active', active === element)); - document.querySelectorAll('.comment-position').forEach(active => active.classList.toggle('active', active.classList.contains(commentClass))); - if (CONFIG.comments.storage) { - localStorage.setItem('comments_active', commentClass); - } - }); - }); - let { activeClass } = CONFIG.comments; - if (CONFIG.comments.storage) { - activeClass = localStorage.getItem('comments_active') || activeClass; - } - if (activeClass) { - const activeButton = document.querySelector(`.comment-button.${activeClass}`); - if (activeButton) { - activeButton.click(); - } - } - })(); - + {{- next_js('comments-buttons.js', true) }} {%- elif theme.comments.style == 'tabs' %}