<span class="load-more"></span>
<!--
  From flat.social
  Take a look at the live version!
  http://flat.social/ysfu/frontend/grid
-->
body {
  background-color: #4a4047;
}
.load-more {
	position: absolute;
	display: block;
	cursor: pointer;
  width: 40px; height: 40px;
  top: 50%; left: 50%;
  margin: -20px 0 0 -20px;
}
	.load-more:before,
	.load-more:after {
		position: absolute;
		display: block;
		content: '';
		width: 30px; height: 30px;
		left: 50%; top: 50%;
		margin-top: -15px;
		border-width: 2px;
		border-style: solid;
		border-color: transparent;
		border-bottom-color: #fff;
		border-right-color: #fff;
		border-radius: 0 0 5px 0;

		transform: translate(-50%, -50%) rotate(45deg);

		transition: all .4s ease-in-out;
	}
	.load-more.active:before {
		border-radius: 50%;
		animation:
			.8s rotate .4s linear forwards infinite;
	}
	.load-more.active:after {
		width: 38px; height: 38px;
		border-radius: 50%;
		animation:
			.8s rotate2 .4s linear forwards infinite;
	}
		@keyframes rotate {
			to {
				transform: translate(-50%, -50%) rotate(405deg);
			}
		}
		@keyframes rotate2 {
			to {
				transform: translate(-50%, -50%) rotate(-315deg);
			}
		}
	.load-more.disabled:before,
	.load-more.disabled:after {
    margin-top: 0;
		transform: translate(-50%, -50%) rotate(135deg) rotateY(180deg);
	}
var page = 1,
    moving = false;
var animationIteration = "animationiteration webkitAnimationIteration mozAnimationIteration oAnimationIteration oanimationiteration",
	transitionEnd      = "transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd";
$(".load-more").on("click", function() {
  if ( moving == false ) {
    moving = true;
    $(".load-more").addClass("active");
    setTimeout(function() {
      $(".load-more").one(animationIteration, function() {
        $(".load-more").removeClass("active");
        $(".load-more").one(transitionEnd, function() {
          page++;
          moving = false;
        });
      });
    }, 2000);
  }
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. //cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js