UNPKG

medium-zoom-element

Version:
197 lines (166 loc) 7.21 kB
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="theme-color" content="#00ab6c"> <link rel="shortcut icon" href="favicon.ico"> <link href="https://fonts.googleapis.com/css?family=Varela+Round|Work+Sans" rel="stylesheet"> <link href="style/reset.css" rel="stylesheet"> <link href="style/style.css" rel="stylesheet"> <title>Medium Zoom | Demo</title> </head> <body> <header class="header"> <h1 class="header__title">Medium Zoom</h1> <div class="header__subtitle">Medium zoom on your images in vanilla JavaScript</div> <div class="header__info"> <a href="https://github.com/francoischalifour/medium-zoom" class="button">View on GitHub</a> <a href="https://francoischalifour.com/lab/medium-image-zoom" class="button">Read the article</a> </div> </header> <article class="container"> <figure> <medium-zoom src="images/image-1.jpg" alt="Zoom with default options" ></medium-zoom> <figcaption>Zoom with default options</figcaption> </figure> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Tempora praesentium cupiditate fugit voluptas, rem eligendi, voluptatem molestias pariatur atque amet, dicta, similique beatae optio quos! Hic necessitatibus dicta magni, tempore. Atque illo voluptatibus fugiat id pariatur cum quasi vel ut repellendus iure quaerat, doloremque sit voluptatum odio maiores provident consequuntur accusantium saepe. </p> <figure> <medium-zoom src="images/image-2.jpg" alt="Zoom with margin" margin="48" ></medium-zoom> <figcaption>Zoom with margin</figcaption> </figure> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea dolores quaerat, quis modi nostrum sequi adipisci ratione esse blanditiis error beatae vel non vero dolor nemo. Animi nemo quisquam ducimus! </p> <figure> <medium-zoom src="images/image-3.jpg" alt="Zoom with background color" background="#212530" ></medium-zoom> <figcaption>Zoom with background color</figcaption> </figure> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dignissimos magnam illo, quam iusto, autem ratione commodi deleniti vero magni fuga consectetur expedita, voluptatum enim quidem? Rem, minima laboriosam hic! Id. </p> <figure class="pull-right"> <medium-zoom src="images/image-4.jpg" alt="Zoom with scroll offset" background="rgba(25, 18, 25, .9)" scroll-offset="0" ></medium-zoom> <figcaption>Zoom without scroll offset</figcaption> </figure> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus cum nulla eligendi recusandae at quae odio, harum nesciunt ut temporibus vitae, laudantium minus. Iste officia aliquid, laborum ratione maxime beatae. </p> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Enim asperiores totam fugiat repellendus laboriosam accusantium, possimus similique quos repellat molestias excepturi ad perspiciatis beatae! Qui repellat numquam incidunt, accusamus autem. </p> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corrupti provident sunt recusandae enim commodi ab dolorem ipsum dolor magni reprehenderit accusantium quasi a autem neque asperiores, tenetur impedit repudiandae quos. </p> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus cum nulla eligendi recusandae at quae odio, harum nesciunt ut temporibus vitae, laudantium minus. Iste officia aliquid, laborum ratione maxime beatae. </p> <figure class="pull-left"> <medium-zoom src="images/image-5.jpg" alt="Zoom without meta click" disable-metaclick ></medium-zoom> <figcaption>Zoom without meta click</figcaption> </figure> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus cum nulla eligendi recusandae at quae odio, harum nesciunt ut temporibus vitae, laudantium minus. Iste officia aliquid, laborum ratione maxime beatae. </p> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corrupti provident sunt recusandae enim commodi ab dolorem ipsum dolor magni reprehenderit accusantium quasi a autem neque asperiores, tenetur impedit repudiandae quos. </p> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corporis veritatis cupiditate iure velit laboriosam eius nesciunt officiis odit cumque deleniti assumenda esse exercitationem ducimus, accusantium eligendi itaque dolorem molestias saepe! </p> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus cum nulla eligendi recusandae at quae odio, harum nesciunt ut temporibus vitae, laudantium minus. Iste officia aliquid, laborum ratione maxime beatae. </p> <figure> <medium-zoom id="zoom-trigger" src="images/image-6.jpg" alt="Zoom to trigger" ></medium-zoom> <figcaption> <button id="btn-trigger" class="button">Trigger the zoom</button> </figcaption> </figure> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corrupti provident sunt recusandae enim commodi ab dolorem ipsum dolor magni reprehenderit accusantium quasi a autem neque asperiores, tenetur impedit repudiandae quos. </p> <figure> <medium-zoom id="zoom-detach" src="images/image-7.jpg" alt="Zoom detached after being zoomed once" ></medium-zoom> <figcaption>Zoom detached after being zoomed once</figcaption> </figure> </article> <footer class="footer"> <div class="footer__links"> <a href="https://github.com/francoischalifour/medium-zoom" class="button">View on GitHub</a> <a href="https://francoischalifour.com/lab/medium-image-zoom" class="button">Read the article</a> </div> <div class="footer__copyright"> Made by <a href="https://francoischalifour.com">François Chalifour</a> </div> <p><a href="#">Back to top</a></p> </footer> <script src="../dist/medium-zoom-element.min.js"></script> <script> (function() { // Trigger dynamic behaviors const button = document.querySelector('#btn-trigger') const zoomToTrigger = document.querySelector('#zoom-trigger') button.addEventListener('click', () => zoomToTrigger.toggle()) const zoomToDetach = document.querySelector('#zoom-detach') zoomToDetach.addEventListeners('hidden', () => zoomToDetach.detach()) })() </script> </body> </html>