Do you like Visual Studio Code as much as I do? It is really great with it.
One day, a good friend of mine recommended me a Visual Studio Code plugin called Power Mode
. At first I didn't care, but later I accidentally installed it. Oh its effect is probably like this.
See it, suddenly I found it really fun. I think this must be the work of some boring genius. So I wonder if I can use CSS to simulate this effect.
So PowerModeInput was born.
PowerModeInput
https://github.com/lindelof/power-mode-input
PowerModeInput can make your text input box more compelling
Online demo
Useage
Install
npm install --save power-mode-input
Usage
import PowerModeInput from "power-mode-input";
const input = document.getElementById("obinput");
PowerModeInput.make(input);
// close PowerModeInput
PowerModeInput.close(input);
// destroy PowerModeInput
PowerModeInput.destroy();
// another usage
PowerModeInput.make(".phone", {
height: 5,
tha: [0, 360],
g: 0.5,
num: 5,
radius: 6,
circle: true,
alpha: [0.75, 0.1],
color: "random"
});
If you are in react
, you can use it like this
componentDidMount(){
PowerModeInput.make(this.inputRef.current);
}
You can use it like this in vue.js
mounted() {
PowerModeInput.make(this.$refs.inputRef);
}
Of course this can be done in angular
const inputElement = this.elementRef.nativeElement.querySelector('input');
PowerModeInput.make(inputElement);
Parameter Description
PowerModeInput.make(input, {
height: 5,
tha: [0, 360],
g: 0.5,
num: 5,
... // Parameter
});
key | describe | type | example |
g | Whether to add gravity | number | 1 |
num | The number of particles emitted each time | number | 3 |
radius | The radius of every particle | number | 10 |
alpha | The alpha of every particle | number | .1 |
tha | The Particle emitter angle | array | [0, 360] |
v | The Particle emitter Particle velocity | number | 0.5 |
life | The life of every particle | number | 1.2 |
color | Particle color | array or string | #ffcccc |
random | Random force | number | 1.2 |
y | Particle emitter height | number | 2 |
height | Particle emitter height Ibid | number | 2 |
Develop process
Of course, the development process is not easy. At first I thought it was very easy to get the input box cursor. Well, I found out that I was wrong. I checked a lot of articles to find a good way.
If you don’t dislike it, I also want to recommend another good library. https://github.com/lindelof/react-mouse-particles. Because most of the code for power-mode-input comes from this.
I bet anyone can use it because it is very simple. If you like this project welcome star it