fix: restore zoom level persistence on page load

Zoom level persistence was broken because hyperscript was setting the
container's value instead of the slider's value on page load.

Changes:
- Fix zoom-control.html line 10: set #zoom-slider's value (not 'my value')
- Add comprehensive zoom persistence test (10-zoom-persistence.test.mjs)
- Update cv-functions.js documentation to clarify hyperscript interop
- Add zoom control feature to README

Test results: 5/5 tests pass
- Zoom saves to localStorage when changed 
- Zoom restores correctly on page reload 
- Reset to 100% works and persists 

Architecture note:
- Hyperscript 'call' within _="" attributes requires global JS scope
- JavaScript wrappers bridge window exposure to hyperscript evaluate()
- Pattern: window.fn() → _hyperscript.evaluate('hyperscriptFn()')
This commit is contained in:
juanatsap
2025-11-17 16:56:01 +00:00
parent 491aa66920
commit 35a836adf3
4 changed files with 233 additions and 6 deletions
+1
View File
@@ -39,6 +39,7 @@ A professional, bilingual CV site with server-side PDF generation, HTMX interact
-**Browser Print** - Alternative print-friendly layout for manual PDF creation
-**HTMX Dynamic Updates** - Smooth UX without heavy JavaScript
-**Paper Design** - Professional CV on elegant white paper with gray background
-**Zoom Control** - Adjustable zoom (25%-175%) with persistence across sessions
-**Responsive** - Mobile, tablet, and desktop friendly
-**JSON-Based Content** - Easy to update without touching code
-**AI Development Section** - Showcases modern AI-assisted development skills