JSFiddle - React, Tailwind, and code Playground

HTML

<div class="col-md-12 ">
    <div class="box" id="box1">
        <img src="https://dummyimage.com/800x800" class="icon"/>
        <div class="rad-slideshow-item active-adjacent">
         
          <div class="rad-asset-wrapper">
            <h1>WEB<br/>DESIGN</h1>
          </div>
        </div>
        
    </div>
      <div class="box" id="box2">
        <img src="https://dummyimage.com/800x800" class="icon"/>
        <div class="rad-slideshow-item active-adjacent">
         
          <div class="rad-asset-wrapper">
            <h1>WEB<br/>DESIGN</h1>
          </div>
        </div>
        
    </div>
     
</div>

CSS

.col-md-12 {
    height: 1500px;
    padding-top: 1000px;
}
.box{
  position:relative;
}
.animated {
      opacity: 1;
    visibility: visible;
    transition: opacity 1s 0s, visibility 1s 0s;
    z-index: 2;
    position: fixed;
    top: 0;
    left: 0;
}
.rad-slideshow-item {
    /* position: relative; */
}
.rad-slideshow-item .rad-asset-wrapper {
 
    display: block;
    padding: 0;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    z-index: 3;
}
.animated .rad-slideshow-item.active-adjacent div.rad-asset-wrapper {
background: #000;
    opacity: 0;
    visibility: hidden;
    position: fixed;
    top: 0;
    left: 0;
    transition: opacity 0s 0s, visibility 0s 0s;
    z-index: 1;
    display: none;
 }
.animated .rad-slideshow-item.active-adjacent div.rad-asset-wrapper {
  display: block;
    transform: translate3d(0, 0, 0);
    transition: opacity 0s 1s, visibility 0s 1s;
}
.rad-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    transform: translate3d(-50%, -50%, 0);
}

JavaScript

function elementInViewport(el) {
  var top = el.offsetTop;
  var left = el.offsetLeft;
  var width = el.offsetWidth;
  var height = el.offsetHeight;

  while(el.offsetParent) {
    el = el.offsetParent;
    top += el.offsetTop;
    left += el.offsetLeft;
  }

  return (
    top < (window.pageYOffset + window.innerHeight) &&
    left < (window.pageXOffset + window.innerWidth) &&
    (top + height) > window.pageYOffset &&
    (left + width) > window.pageXOffset
  );
}

$(window).scroll(function(event){
   
   console.log("box1 => ", elementInViewport(document.getElementById("box1")));
   console.log("box2 => ", elementInViewport(document.getElementById("box2")));
   
   
   /*  if (elementInViewport('.box')) {
    console.log($(this).find('img').html()); 
        $('img').addClass('animated flip').css('background', 'red');
        //added background red so you can see it has triggered
    }
    else {
    $('img').removeClass('animated flip');
    } */
    
});