diff options
| author | navewindre <boneyaard@gmail.com> | 2026-02-11 02:05:39 +0100 |
|---|---|---|
| committer | navewindre <boneyaard@gmail.com> | 2026-02-11 02:05:39 +0100 |
| commit | d9d55620a6f4f44b2c5069da107b2b3b111390ed (patch) | |
| tree | fbee83ccabeee18a04a691d61b60f68e98fa6553 /web/src/blog.tsx | |
| parent | 3032a8495174f4f583f52c4e9429b6d4d357dc0c (diff) | |
seo renderer
Diffstat (limited to 'web/src/blog.tsx')
| -rw-r--r-- | web/src/blog.tsx | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/web/src/blog.tsx b/web/src/blog.tsx index bfef434..1fcfec2 100644 --- a/web/src/blog.tsx +++ b/web/src/blog.tsx @@ -8,12 +8,9 @@ let reqErr = 0; let hljs = null; let hljs_imported = 0; -async function importHlJs() { - if( hljs ) return; - if( hljs_imported ) return; - hljs_imported = 1; - hljs = ( await import( 'highlight.js' ) ).default; +async function highlightCode() { + if( !hljs || !hljs_imported ) return setTimeout( highlightCode, 500 ); const elements = $( "code" ); elements.each( ( _, e ) => { @@ -21,6 +18,14 @@ async function importHlJs() { } ); } +async function importHlJs() { + if( hljs ) return; + if( hljs_imported ) return; + + hljs_imported = 1; + hljs = ( await import( 'highlight.js' ) ).default; +} + function urlForHref( href: string, isdir: boolean ) { const url = new URL( window.location.href ); let path = url.pathname; @@ -105,19 +110,20 @@ async function populatePost() { $( "title" ).html( title ); } - importHlJs(); $( "#package-entries" ).find( ".spinner" ).remove(); $( "#package-entries" ).css( "display", "none" ); $( "#blog-entry" ).html( text ); $( "#blog-entry" ).css( "display", "flex" ); $( "#back-btn" ).css( "display", "block" ); + setTimeout( highlightCode ); } catch( e ) { return populateEntries(); } } export default function Blog() { + importHlJs(); entries = []; reqErr = 0; setTimeout( async () => { |
