# Restyle Position:Sticky Header On Scroll with Simple Performant Intersection Observer JavaScript

1. Use JavaScript to insert a simple `div` at the top of this page.

2. Use `IntersectionObserver` to check if the div is within the viewport.

3. If the div is outside the viewport add " `sticking` " class to the header.

Since the div has no height, scrolling down will immediately make the div go outside the viewport. This triggers the observer and adds the class.

That's it!

This code is based on an article by Ryan Mulligan , and a video by Kevin Powell .

Take a look at the JavaScript code. Everything is commented.

## Latin Text To Make the Page Longer

Voluptatum dignissimos sequi quo repellendus? Maiores velit, numquam doloremque non reprehenderit vero blanditiis error saepe minus sequi cum necessitatibus. Iste ipsam cum omnis quos? Asperiores, explicabo? Labore autem eos ipsam!

Voluptates quam nobis, deserunt voluptatibus nesciunt, recusandae architecto molestiae veritatis quidem doloribus est quasi sapiente dolore at quis facere saepe necessitatibus? Quisquam fugiat nostrum, cum sequi quo laboriosam quod earum.

Ipsam, minima expedita rerum cumque consectetur cum nulla, consequuntur modi corrupti eius repellat amet quaerat sequi. Deserunt nihil repellat aliquam ullam nulla, aperiam earum dignissimos, sunt unde magnam qui error.

### Lorem ipsum dolor sit amet consectetur adipisicing elit

Corporis quibusdam, dolorum voluptate, sapiente magni iusto tenetur, temporibus quam cum eveniet reiciendis in tempore nesciunt ut nihil iure similique! Iste eum harum quasi nisi dolor tempora libero rerum consequatur!

Dignissimos labore modi eligendi eos illum nemo, nihil repellat mollitia esse vel, hic assumenda fuga dolor harum, ut et tempora quis praesentium repellendus eveniet error quae dolorum alias? Aut, quaerat?

Tenetur repudiandae, totam eos dolorem quasi dolorum nemo obcaecati natus blanditiis eligendi ratione delectus maiores, consectetur quibusdam enim voluptate ut nobis perferendis vero! Debitis delectus veritatis recusandae quos assumenda. Esse.

Quisquam porro rem tempore libero earum explicabo in laudantium accusantium minus omnis sequi amet ullam maxime mollitia, exercitationem, non reprehenderit a commodi, debitis culpa obcaecati praesentium! Quaerat ad mollitia optio!

Dolores at repellat sint impedit nostrum eligendi odit, nesciunt enim neque temporibus quaerat laborum veniam ea iste iusto culpa molestias itaque harum ratione consequuntur voluptas alias quod amet! Laborum, eligendi.

Exercitationem, voluptatibus aut. Reiciendis velit qui accusamus nisi delectus unde maiores quo perferendis dolorem voluptatibus temporibus harum optio sit possimus quis provident neque dolore ea, adipisci ullam, mollitia itaque! Blanditiis.

### Lorem ipsum dolor

Lorem ipsum dolor, sit amet consectetur adipisicing elit. Soluta animi labore nesciunt rerum commodi ipsa tenetur dolores, id optio architecto itaque distinctio facilis velit alias corporis provident harum minima! Nulla?

Suscipit reiciendis, praesentium consequatur sequi officiis natus excepturi odit molestiae dignissimos iste facere ut numquam. Provident maiores pariatur atque ducimus ullam tempore aspernatur deserunt repudiandae incidunt nostrum exercitationem, nisi hic!

Id perferendis sequi, voluptatibus expedita tempore voluptate laborum officiis provident accusantium? Animi quia fugit dignissimos ea quidem. Vel at doloremque, mollitia recusandae, totam officia, deserunt nesciunt porro ea eius quam!

Tempore, doloremque. Quo hic ex debitis. Iure amet perferendis est harum ea illo hic unde obcaecati ab. Doloremque earum dolores dolor itaque minima suscipit adipisci quibusdam beatae, ab iure accusantium?

Architecto, hic. Nam natus at quod provident sint excepturi dolor nobis iste cupiditate, nulla ipsa maxime temporibus, esse dignissimos quae eos saepe obcaecati ducimus veniam autem laudantium molestiae. Dolores, asperiores.

Odio sed eum molestiae. Doloribus harum quasi debitis aliquam modi voluptas quisquam accusantium eum iure officia sint laboriosam fuga quo labore, neque architecto itaque voluptatum vel minus rem omnis. Architecto.

Similique iusto, nihil unde, in repellendus quae porro deserunt quis ut saepe eos obcaecati maiores repellat beatae eligendi nostrum necessitatibus ea temporibus? Laboriosam repudiandae quam sint modi, autem rem reiciendis.

Hic voluptatibus libero numquam totam alias blanditiis facilis tenetur assumenda fuga laudantium quas recusandae quibusdam odio, ea magnam neque commodi cum amet earum! Nobis commodi, cupiditate iure rem voluptatem dolorum!

Veritatis sed ipsum fuga! Neque cumque accusantium deleniti aspernatur, repellat corporis autem ipsa ex, odio possimus nisi quaerat et. Incidunt omnis atque ipsum tempore? Nostrum consequatur delectus inventore ea corrupti.

Provident error sunt impedit, possimus cumque unde illum cupiditate deleniti tempore nam eius quibusdam. Adipisci veritatis, expedita ex minus obcaecati rerum dicta tenetur dolores qui corrupti consequuntur totam commodi culpa?

Tempora atque debitis deleniti odio, suscipit officia non maiores? Rerum modi quibusdam iste temporibus nesciunt commodi consectetur quis perferendis ea harum, reprehenderit sint asperiores iusto dolor, repellat nihil ab repudiandae?

Facere, enim atque! Sapiente blanditiis maiores quibusdam minima voluptates animi itaque consectetur totam atque minus quisquam inventore praesentium nostrum, iste ipsam. Assumenda ad vero repudiandae dignissimos eius! Eius, autem molestias.

Dolores beatae rerum cum eos necessitatibus quaerat, deleniti facere a sit totam odit ad commodi mollitia possimus, vel vero aliquam voluptate in dignissimos asperiores pariatur quos dolorum. Voluptatibus, ducimus tempora.

Repellendus quisquam asperiores ipsa ad minus exercitationem quidem aliquid voluptas hic doloribus iste id quibusdam atque a consequuntur voluptatem modi accusantium, adipisci omnis optio saepe quos, voluptate voluptatum veritatis? Nisi.

Illo sed consequatur, omnis, hic reprehenderit beatae totam vitae, nesciunt saepe at itaque officiis. Magnam perferendis, placeat, repellendus dignissimos, ipsum quam dolores dolorum distinctio quasi laborum quibusdam natus neque consequatur?

Ullam esse vero deserunt asperiores, doloribus id consectetur porro autem sapiente, sed laudantium natus molestias voluptatem commodi, similique laboriosam cupiditate aliquam officiis rem ab fugit. Nisi libero laudantium magni facilis!

Laudantium ducimus rem voluptatem odit, molestiae cumque ad, delectus hic, voluptas soluta beatae totam? Rem error quaerat eveniet tempora, esse hic optio repudiandae unde odio est velit blanditiis, earum alias.

Deserunt tempora ullam esse quidem laborum, maiores pariatur voluptates eveniet officiis laudantium consequuntur vitae a cum possimus itaque obcaecati distinctio? Voluptate, nobis! Enim commodi unde corrupti asperiores, distinctio ad eligendi.

Accusamus labore eaque placeat optio doloremque hic dolor molestias in ea rem aperiam aliquid, animi cupiditate maxime quae iusto doloribus laboriosam adipisci saepe quos sequi ducimus quis? Harum, quae est.

Harum aspernatur est numquam dolor expedita perferendis tempore quisquam pariatur, voluptatum culpa sapiente vitae nihil, explicabo fugiat, natus aliquam laudantium alias voluptas assumenda mollitia minus? Reprehenderit autem inventore fugit beatae.