【问题标题】:Particles.js not allowing spawn around textParticles.js 不允许围绕文本生成
【发布时间】:2016-12-03 05:13:41
【问题描述】:

我终于让particle.js 作为背景工作了。

但您只能在单击文本上方或下方(按高度)生成星星,但无法在文本所在的位置(或与容器所在的同一行)生成星星。

有没有办法解决这个问题?

我的 HTML:

<link href="https://fonts.googleapis.com/css?family=Roboto:100" rel="stylesheet">

<!-- particles.js container -->
<div id="particles-js"></div>
<!-- particles.js container -->

<body>
 <div class="something">
  <h1> MY TITLE </h1>
 </div>
</body>

<!-- particles.js library -->
<script src="http://cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js"></script>

我的 CSS:

* {
  margin: 0;
  padding: 0;
}

p { margin: 1em auto;}

canvas {
  display: block;
}


#particles-js {
 width: 100%;
  height: 100vh;
  background: -webkit-linear-gradient(top, #000000 1%, #0c0c24 100%);
  position: fixed;
  top: 0;
  left: 0;
  z-index: -50;
}

.something {
  text-align: center;
  margin: 0 auto;
  margin-top: 200px;
  font-family: 'Roboto', sans-serif;
}

.something h1 {
  color: white;
  font-size: 10em;
}

我的 JS:

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

【问题讨论】:

标签: javascript html css particles


【解决方案1】:

这里是修复。

您需要在window 上添加交互性,如docs 中所述,或定义您自己的canvas 以使其工作

这是工作的fiddle

"interactivity": {
    "detect_on": "window",
    "events": {
      "onhover": {
        "enable": false,
        "mode": "grab"
      },

【讨论】:

  • 效果惊人,我一直在努力使 repulse 工作,默认它是 detect_on :canvas,并且由于 z-index 和 canvas 上的多个图层,它不起作用。一旦我更改为窗口,它的工作很棒,非常感谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-16
  • 1970-01-01
  • 2016-02-24
  • 1970-01-01
  • 2016-05-22
  • 1970-01-01
相关资源
最近更新 更多