Screensaver Pulse

by TheOrdinaryGeek

HTML

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.5.1/animate.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-beta1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="http://labs.rampinteractive.co.uk/touchSwipe/jquery.touchSwipe.min.js"></script>
<body>
 <div class="test">Swipe me</div>

<button>New</button>
  <!-- start overlay -->
  <div class="overlay overlay-data">
    <div class="container-fluid">
      <div class="row">
        <div class="col-md-12 overlay-info">
          <p class="help-heading">Help?</p>
          <div class="circle"></div>
          <div class="pulse-ring"></div>
        </div>
      </div>
    </div>
  </div>
  <!-- end ovberlay-->
  <div class="container text-center">
    <!-- first row -->
    <div class="row">
      <div class="col-md-4">
        <div class="menu-item blue" id="loader1">
          <a href="#"><i class="fa fa-map-signs big-icon"></i>
                    <p>Guides</p></a>
        </div>
      </div>
      <div class="col-md-4">
        <div class="menu-item blue" id="loader4">
          <a href="#"><i class="fa fa-shopping-cart big-icon"></i>
                    <p>Borrowing</p></a>
        </div>
      </div>
      <div class="col-md-4">
        <div class="menu-item blue" id="loader7">
          <a href="#"><i class="fa fa-binoculars big-icon"></i>
                    <p>Finding books</p></a>
        </div>
      </div>
    </div>
    <!-- end first row -->
  </div>
  <!-- Start Main Body Section -->
  <div class="mainbody-section text-center">
    <div class="partners">
      <!-- Modal -->
      <div aria-labelledby="myLargeModalLabel" class="modal fade bs-example-modal-lg" id="navModal" role="dialog" tabindex="-1">
        <div class="modal-dialog...

CSS

.test{ height:200px; text-align:center; background-color:red;}
.test2{background-color:blue;}

body {
  background-attachment: fixed;
  background-size: cover;
  background-position: 50% 50%;
  font-family: 'Open Sans', sans-serif;
  outline: 0;
}

html,
body {
  height: 100%
}

.btn-primary {
  border-color: #FF432E;
  background-color: #FF432E;
  text-transform: uppercase;
  font-weight: 300;
  color: #fff;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.blue {
  background: #28ABE3;
}

.menu-item {
  color: #fff;
  padding-top: 45px;
  padding-bottom: 45px;
  margin-bottom: 30px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border: 5px solid transparent;
}

.menu-item:hover {
  border: 5px solid rgba(255, 255, 255, 0.70);
}

.menu-item a {
  color: #fff;
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.menu-item a p {
  font-weight: 300;
  font-size: 25px;
}

.menu-item a i {
  font-size: 50px;
  padding-bottom: 20px;
}

.menu-item:hover a {
  text-decoration: none;
}

.blur {
  -webkit-filter: blur(4px);
}

.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #000;
  z-index: 1;
}

.overlay p {
  text-align: center;
  position: relative;
  top: 10%;
  height: 30%;
  font-size: 120px;
  color: white;
  font-family: 'Playfair Display', serif;
}

.overlay-data {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  visibility: 0s 0.5s;
  transition: opacity 0.5s, visibility 0s 0.5s;
}

.overlay-open {
  opacity: 0.5;
  visibility: visible;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

.overlay-info {
  padding-top: 100px;
}

.circle {
  padding: 100px;
  position: relative;
}

.pulse-ring {
  //content: '';
  width: 400px;
  height: 400px;
 ...

JavaScript

$(document).ready(function() {
  $(".overlay").addClass('overlay-open');
  $("section, .container").addClass('blur');
});

//on click
$(document).on('click', '.overlay', function() {
  $('.overlay').addClass('animated slideOutUp');
  $("section, .container").removeClass('blur');
});

$(function() {      
      //Enable swiping...
    var addSwipeTo = function(selector) {  
         $(selector).swipe("destroy");
         $(selector).swipe({
            //Generic swipe handler for all directions
            swipe:function(event, direction, distance, duration, fingerCount) {
              $(this).text("You swiped " + direction );  
            },
            //Default is 75px, set to 0 for demo so any distance triggers swipe
             threshold:0
          });
    };
    addSwipeTo(".test");
    
    $(document).on('click','button',function(){
       $('<div class="test test2">Swipe me</div>').appendTo('body');
       addSwipeTo(".test");
    });
    
});