πŸ“š New Community Library Items


​

​

We launched the Community Library this week. Let's highlight some of the useful resources.

πŸ–¨οΈ Copy to Clipboard

Copy text to clipboard on button click with visual feedback.

​https://slater.app/community_library/copy-to-clibboard-41c30ebc-180e-4e9d-b747-f427f1f05151​

​

β€‹πŸ‘» Reveal Words on Scroll

Animate text on scroll with GSAP, ScrollTrigger, and SplitType.​

​https://slater.app/community_library/text-by-words-with-scroll-b0810bf3-64b6-40a4-b5ad-46c784fdcc76​

​

πŸ›€ Remove https:// From Text Link

Remove protocols from anchor texts using jQuery.

​https://slater.app/community_library/remove-https-from-text-link-7a8c89db-0803-4f41-948b-db08a2778c7c​

​

Not what you are looking for? Go check out the full Community Library.

Do you have useful scripts that the Webflow community could use? Let us know and we'll get them added.

​

Javascript 101: The Scroll Event

This week, we’ve been creating experiences that use the scroll event, so we thought we’d discuss it today. Leveraging the scroll event can be extremely useful. (It can also be extremely frustrating.)

The scroll event in JavaScript allows you to execute code when a user scrolls an element or the entire window. This can be used to trigger animations, load content dynamically, or show/hide elements.

Let’s create a simple script that shows an element when it scrolls into view and hides it when it leaves the viewport.

Here is an html element with the ID we will use.

<div id="scroll-element">Hello, I am here!</div>

Here is the Javascript.

const scrollElement = document.getElementById('scroll-element');
function isElementInViewport(el) {
    const rect = el.getBoundingClientRect();
    console.log("scroll triggered", rect.top)
    return (
        rect.top >= 0 &&
        rect.left >= 0 &&
        rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
        rect.right <= (window.innerWidth || document.documentElement.clientWidth)
    );
}
function checkVisibility() {
    if (isElementInViewport(scrollElement)) {
        scrollElement.style.opacity = 1;
    } else {
        scrollElement.style.opacity = 0;
    }
}
window.addEventListener('scroll', checkVisibility);
checkVisibility(); // Check visibility on initial load

Let’s break down what we’re doing here.

  • isElementInViewport function checks if the element is in the viewport using getBoundingClientRect.
  • checkVisibility function sets the opacity of the element based on whether it is in the viewport or not.
  • scroll event listener calls checkVisibility every time the user scrolls.
  • Initial call to checkVisibility ensures the correct state when the page loads.

Add this code to a project to see how often the scroll event is triggered. The console.log will give you an idea :). The event is triggered frequently, which can make debugging issues a challenge.

GSAP and Webflow interactions are the more common approaches to handle these type of expereinces but understanding the scroll event is a very useful skill and something you will use often.

​

Your projects, supported by Slater

We have been working on a new Podcast site today, which made me think about Crucible Moments, a podcast site we built for Sequoia Capital.

​https://www.cruciblemoments.com/​

​
​

​

Happy coding!

πŸ€™ the Slater Team

​

If Slater helps you create better websites, please support the team behind it.

Welcome To Slater!

Slater resources, updates and community activity

Read more from Welcome To Slater!

The team behind Slater would like to wish you a Merry Christmas and a happy New Year! πŸŽ„πŸŽ…πŸŽ Get the Santa ASCII art: https://slater.app/projects/11431/pages/27608 Happy coding! πŸ€™ the Slater Team If Slater helps you create better websites, please support the team behind it. Become a Pro Slater User

Earlier this year, we built figdam.com. It is currently used by several of our clients to host files and watermark PDFs. We’d like to bring this file hosting functionality to Slater users. With that in mind, where do you currently store files that Webflow doesn’t support? Would this feature be useful to you? What file hosting features do you need? Let us know. JS 101: File types File storage? Javascript? Let's consider all of the different file types that you could host and then retrieve and...

Hi, Just a reminder that Kendra and Mason will be hosting an EA Office Hours Zoom this Friday, the 13th (spooky…) to chat about topics relating to Chapter 1: Sales for Creative Types. Sign up if you can make it, and bring your questions. Let’s get past any lingering sales ick together. Register to join us this Friday, 12/13 here. Also, if you can’t make it this week, we’re thinking about doing it again next Friday, 12/20 as well, if anyone is game? To ring in the holiday break, we’ll chat...