2018-12-16 10:20:46 +09:00
|
|
|
import Particle from '../components/particle.vue';
|
|
|
|
|
|
|
|
export default {
|
|
|
|
bind(el, binding, vn) {
|
2018-12-17 17:21:36 +09:00
|
|
|
if (vn.context.$store.state.device.reduceMotion) return;
|
|
|
|
|
2018-12-16 10:20:46 +09:00
|
|
|
el.addEventListener('click', () => {
|
2018-12-27 22:54:50 +09:00
|
|
|
if (binding.value === false) return;
|
|
|
|
|
2018-12-16 10:20:46 +09:00
|
|
|
const rect = el.getBoundingClientRect();
|
|
|
|
|
|
|
|
const x = rect.left + (el.clientWidth / 2);
|
|
|
|
const y = rect.top + (el.clientHeight / 2);
|
|
|
|
|
|
|
|
const particle = new Particle({
|
|
|
|
parent: vn.context,
|
|
|
|
propsData: {
|
|
|
|
x,
|
|
|
|
y
|
|
|
|
}
|
|
|
|
}).$mount();
|
|
|
|
|
|
|
|
document.body.appendChild(particle.$el);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
};
|