我使用Particle.js库以粒子为背景,这里是github链接https://github.com/VincentGarreau/particles.js,我在WordPress站点上使用了这个链接。在包含库之后,我在一个页面上使用了粒子背景,它工作得很好,但是在那些不存在它的html选择器的页面上会产生问题(在这些页面中,粒子-js id不存在)。这是js错误出现在不存在js错误的页面上:
TypeError: pJS_tag为空particles.js?ver=1.0行1495
以下是我的HTML代码:<div id="particles-js"></div>
这是我的js代码:
if($('#particles-js').length > 0){
particlesJS("particles-js", {"particles":{"number":{"value":80,"density":{"enable":true,"value_area":800}},"color":{"value":"#d5d5d4"},"shape":{"type":"circle","stroke":{"width":0,"color":"#c7cbd2"},"polygon":{"nb_sides":5},"image":{"src":"img/github.svg","width":100,"height":100}},"opacity":{"value":0.5,"random":false,"anim":{"enable":false,"speed":1,"opacity_min":0.1,"sync":false}},"size":{"value":8.33451405615796,"random":true,"anim":{"enable":false,"speed":40,"size_min":0.1,"sync":false}},"line_linked":{"enable":true,"distance":150.02125301084325,"color":"#d5d5d5","opacity":1,"width":1.1668319678621144},"move":{"enable":true,"speed":6,"direction":"none","random":false,"straight":false,"out_mode":"out","bounce":false,"attract":{"enable":false,"rotateX":600,"rotateY":1200}}},"interactivity":{"detect_on":"canvas","events":{"onhover":{"enable":true,"mode":"repulse"},"onclick":{"enable":true,"mode":"push"},"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});
//var count_particles, stats, update; stats = new Stats; stats.setMode(0);
var stats, update; stats = new Stats; stats.setMode(0);
stats.domElement.style.position = 'absolute';
stats.domElement.style.left = '0px';
stats.domElement.style.top = '0px';
document.body.appendChild(stats.domElement);
//count_particles = document.querySelector('.js-count-particles');
update = function() {
stats.begin();
stats.end();
// if (window.pJSDom[0].pJS.particles && window.pJSDom[0].pJS.particles.array) {
// count_particles.innerText = window.pJSDom[0].pJS.particles.array.length;
// }
requestAnimationFrame(update);
}; //requestAnimationFrame(update);
}发布于 2018-04-07 09:54:55
在关闭head标记之前在header.php文件中包含库文件
<script type='text/javascript' src='http://localhost/demowp/wp-content/themes/sydney/js/particles.js?ver=2.1.4'></script>
<script type='text/javascript' src='http://localhost/demowp/wp-content/themes/sydney/js/stats.js?ver=2.1.4'></script>
</head>在任何你想要的地方都包括div。
<div id="particles-js"></div>在footer.php文件中添加此脚本
<script>
if(jQuery('#particles-js').length){
particlesJS("particles-js", {"particles":{"number":{"value":80,"density":{"enable":true,"value_area":800}},"color":{"value":"#d5d5d4"},"shape":{"type":"circle","stroke":{"width":0,"color":"#c7cbd2"},"polygon":{"nb_sides":5},"image":{"src":"img/github.svg","width":100,"height":100}},"opacity":{"value":0.5,"random":false,"anim":{"enable":false,"speed":1,"opacity_min":0.1,"sync":false}},"size":{"value":8.33451405615796,"random":true,"anim":{"enable":false,"speed":40,"size_min":0.1,"sync":false}},"line_linked":{"enable":true,"distance":150.02125301084325,"color":"#d5d5d5","opacity":1,"width":1.1668319678621144},"move":{"enable":true,"speed":6,"direction":"none","random":false,"straight":false,"out_mode":"out","bounce":false,"attract":{"enable":false,"rotateX":600,"rotateY":1200}}},"interactivity":{"detect_on":"canvas","events":{"onhover":{"enable":true,"mode":"repulse"},"onclick":{"enable":true,"mode":"push"},"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});
//var count_particles, stats, update; stats = new Stats; stats.setMode(0);
var stats, update; stats = new Stats; stats.setMode(0);
stats.domElement.style.position = 'absolute';
stats.domElement.style.left = '0px';
stats.domElement.style.top = '0px';
document.body.appendChild(stats.domElement);
//count_particles = document.querySelector('.js-count-particles');
update = function() {
stats.begin();
stats.end();
// if (window.pJSDom[0].pJS.particles && window.pJSDom[0].pJS.particles.array) {
// count_particles.innerText = window.pJSDom[0].pJS.particles.array.length;
// }
requestAnimationFrame(update);
}; //requestAnimationFrame(update);
}
</script>工作很好。琴杆
https://stackoverflow.com/questions/49704451
复制相似问题