Великолепное всплывающее окно с частицами.js

Я пытаюсь реализовать Vincent Garreau частиц.js внутри Magnific Popup, но пока мне не повезло.

Вот мой код:

<div id="diagram-popup" class="white-popup mfp-hide">
  <div class="container-fluid">
    <p>Content goes here!</p>
    <div class="particles-bg">
      <div id="particles-js"></div>
    </div>
  </div>
</div>

<a href="#diagram-popup" class="diagram-btn">
   Open popup
</a>

CSS:

/* white-popup styles */
.white-popup {
  background: #000;
  width: 100%;
  height: 100%;
  color:#fff;
  margin: 0;
  padding: 0;
  padding-top: 10%;
}

.white-popup .mfp-close {
  position: absolute;
  top: 15px;
  right: 15px;
  color: #fff;
  background-color: #d82034;
  border-radius: 50%;
  opacity: 1;
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

/* Particles js styles */
canvas {
  display: block;
  vertical-align: bottom;
}

#particles-js {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  background-color: transparent;
  background-image: url("");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  z-index: 1;
}

JavaScript:

// Diagram popup
$('.diagram-btn').magnificPopup({
  type:'inline',
  removalDelay: 500, //delay removal by X to allow out-animation
  midClick: true,
});


// particle js
particlesJS("particles-js", {
  "particles": {
    "number": {
      "value": 100,
      "density": {
        "enable": false,
        "value_area": 0
      }
    },
    "color": {
      "value": "#e7e5df"
    },
    "shape": {
      "type": "circle",
      "stroke": {
        "width": 0,
        "color": "#000000"
      },
      "polygon": {
        "nb_sides": 5
      },
      "image": {
        "src": "img/github.svg",
        "width": 1000,
        "height": 1000
      }
    },
    "opacity": {
      "value": 1,
      "random": false,
      "anim": {
        "enable": false,
        "speed": 1,
        "opacity_min": 0.1,
        "sync": false
      }
    },
    "size": {
      "value": 20,
      "random": true,
      "anim": {
        "enable": false,
        "speed": 40,
        "size_min": 0.1,
        "sync": false
      }
    },
    "line_linked": {
      "enable": true,
      "distance": 150,
      "color": "#dedac9",
      "opacity": 1,
      "width": 2
    },
    "move": {
      "enable": true,
      "speed": 3,
      "direction": "none",
      "random": false,
      "straight": false,
      "out_mode": "out",
      "bounce": false,
      "attract": {
        "enable": false,
        "rotateX": 600,
        "rotateY": 1200
      }
    }
  },
  "interactivity": {
    "detect_on": "window",
    "events": {
      "onhover": {
        "enable": false,
        "mode": "repulse"
      },
      "onclick": {
        "enable": false,
        "mode": "repulse"
      },
      "resize": true
    },
    "modes": {
      "grab": {
        "distance": 400,
        "line_linked": {
          "opacity": 1
        }
      },
      "bubble": {
        "distance": 400,
        "size": 40,
        "duration": 2,
        "opacity": 8,
        "speed": 3
      },
      "repulse": {
        "distance": 200,
        "duration": 0.4
      },
      "push": {
        "particles_nb": 4
      },
      "remove": {
        "particles_nb": 2
      }
    }
  },
  "retina_detect": true
});

Вот кодовая ручка: https://codepen.io/PauloNatal/pen/RLENwO

Что действительно странно, так это то, что если вы откроете инспектор браузера, он будет работать. Любые огни на этом будут оценены.

0 ответов

Другие вопросы по тегам