粒子Js不能在我的ruby on rails项目上工作

时间:2017-01-05 15:51:48

标签: ruby-on-rails ruby particles.js

我正在尝试在我的ruby on rails项目上实现粒子效果,但是在遵循一些教程和粒子包的github指令后,即使我指定了灰色背景,我也没有在本地服务器上获得效果。也许你可以建议哪一个是我的错误或我错过了什么。这是我的代码。

的application.js

// This is a manifest file that'll be compiled into application.js, which will include all the files
// listed below.
//
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts,    vendor/assets/javascripts,
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
//
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// compiled file.
//
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
// about supported directives.
//
//= require particles.js
//= require app.js
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require_tree .

Application.css

/*
* This is a manifest file that'll be compiled into application.css, which   will include all the files
* listed below.
*
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
* or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
*
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
* compiled file so the styles you add here take precedence over styles defined in any styles
* defined in the other CSS/SCSS files in this directory. It is generally better to create a new
* file per style scope.
*
*= require_tree .
*= require_self
*/

back.css

#particles-js{
    backgorund: #444;
} 

home.html.erb

<h1>Rubsol#home</h1>
<p>Find me in app/views/rubsol/home.html.erb</p>
<div id="particles-js"></div>

我没有放行

<script src="particles.js"></script>
<script src="particles.js"></script>

因为我认为它们不是必需的,因为我使用的是// = require_tree但是我也尝试过它们并且它没有显示任何内容。

back.css只是为了设置粒子效果的backgorund的颜色而创建的,我没有发布particle.js和app.js的内容,因为我没有更改这些文件的任何内容,它们是你可以从github下载相同的。

https://github.com/VincentGarreau/particles.js/

这是我得到的:

Result

1 个答案:

答案 0 :(得分:0)

我解决了它所做的是修改app.js文件,如下所示:

$(document).ready(function(){

console.log("Loading particles.js");

particlesJS('particles-js',
 {
  "particles": {
    "number": {
      "value": 80,
      "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": 0.5,
      "random": false,
      "anim": {
        "enable": false,
        "speed": 1,
        "opacity_min": 0.1,
        "sync": false
      }
    },
    "size": {
      "value": 5,
      "random": true,
      "anim": {
        "enable": false,
        "speed": 40,
        "size_min": 0.1,
        "sync": false
      }
    },
    "line_linked": {
      "enable": true,
      "distance": 150,
      "color": "#ffffff",
      "opacity": 0.4,
      "width": 1
    },
    "move": {
      "enable": true,
      "speed": 6,
      "direction": "none",
      "random": false,
      "straight": false,
      "out_mode": "out",
      "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
      },
      "push": {
        "particles_nb": 4
      },
      "remove": {
        "particles_nb": 2
      }
    }
  },
  "retina_detect": true,
  "config_demo": {
    "hide_card": false,
    "background_color": "#b61924",
    "background_image": "",
    "background_position": "50% 50%",
    "background_repeat": "no-repeat",
    "background_size": "cover"
   }
  }
 );
});

因此,当我在控制台级别工作时,我必须通过main.js更改app.js文件的名称,因为我直接使用java语言。除此之外我删除了particle.js文件并使用了vendor.min.js文件位于vendor文件夹中,因此我必须在application.js文件中使用// = require particles.min。如果您知道任何其他方式使其工作或您可以更好地解释它或在我的答案中添加一些细节,欢迎您。