Холст частиц Js отображается в самом низу страницы - PullRequest
0 голосов
/ 02 февраля 2019

Я использую Vue 2 и Laravel для своего сайта и собираюсь интегрировать Particles Js, однако холст частиц отображается внизу страницы, несмотря ни на что.Насколько я понимаю, он должен отображаться внутри div с идентификатором частиц-js, однако это не так, и даже если указанный div не находится на странице, он все равно отображается внизу страницы.

Я пробовал разные классы CSS, чтобы просто переместить холст, но, похоже, ничего не работает.Я также пытался жестко запрограммировать холст, где я хочу, чтобы он был, но так не работает.


    export default {
        layout: 'basic',
        mounted() {
            console.log('mounted');

            particlesJS('app', {

                "particles": {
                    "number": {
                        "value": 100,
                        "density": {
                            "enable": true,
                            "value_area": 500
                        }
                    },
                    "color": {
                        "value": "#5802ff"
                    },
                    "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": 3,
                        "random": true,
                        "anim": {
                            "enable": false,
                            "speed": 40,
                            "size_min": 0.1,
                            "sync": false
                        }
                    },
                    "line_linked": {
                        "enable": true,
                        "distance": 150,
                        "color": "#9054ff",
                        "opacity": 0.4,
                        "width": 1
                    },
                    "move": {
                        "enable": true,
                        "speed": 2,
                        "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": "grab"
                        },
                        "onclick": {
                            "enable": true,
                            "mode": "push"
                        },
                        "resize": true
                    },
                    "modes": {
                        "grab": {
                            "distance": 140,
                            "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
            });
        },

Вот как я реализую Particles Js с vue 2

Я добавляю <div id="particles-js"></div>

И у него должен быть холст внутри этого, но он не размещает его только в нижней части div приложения, который определяет область действия для vue

Я хочу иметь возможность поместитьэто в фоновом режиме вверху страницы

1 Ответ

0 голосов
/ 02 февраля 2019

Глядя на документацию ofчастицJS, первый аргумент particles.load - это идентификатор DOM.В их примере это particles-js, который является идентификатором элемента DOM, в котором отображается холст, как вы правильно указали в своем вопросе.

Однако в опубликованном вами примере кода вы пишете particlesJS('app', ... ), который объясняетпочему холст добавляется к элементу app.Просто замените app на идентификатор элемента, в котором вы хотите визуализировать холст, и он должен работать нормально.

...