<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <div class="box">
  <div class="box__row">
    <div class="box__image">
      <img src="https://spec38.ru/wp-content/uploads/2023/03/Без-имени-2-300x200.png" alt="">
    </div>
    <div class="box__content">Текст</div>
  </div>
  <div class="box__row">
    <div class="box__content">Текст</div>
    <div class="box__image">
      <img src="https://spec38.ru/wp-content/uploads/2023/03/Без-имени-2-300x200.png" alt="">
    </div>
    
  </div>
  <div class="box__row">
    <div class="box__image">
      <img src="https://spec38.ru/wp-content/uploads/2023/03/Без-имени-2-300x200.png" alt="">
    </div>
    <div class="box__content">Текст</div>
  </div>
  <div class="box__row">
    <div class="box__content">Текст</div>
    <div class="box__image">
      <img src="https://spec38.ru/wp-content/uploads/2023/03/Без-имени-2-300x200.png" alt="">
    </div>
    
  </div>
</div>
</body>
</html>
.box {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: 200px;
  gap: 20px;
  max-width: 800px;
  margin: 0 auto;
  &__row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 40px;
    outline: 1px solid black;
  }

  &__image {

    img{
      display: none;
    }
  }

  &__content {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
View Compiled
let boxRow = $('.box__row');
boxRow.each(function(){
  let boxContent = $(this).find('.box__content');
  let boxImage = $(this).find('.box__image > img');
  
  boxContent.hover(
  function(){
    boxImage.dequeue().stop(true, true).fadeIn(400);
  },
    function(){
      boxImage.dequeue().stop(true, true).fadeOut(400);
    }
  )
})

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js