Fancy Gooey Cursor With jQuery, CSS3 And SVG Filters
| File Size: | 1.74 KB |
|---|---|
| Views Total: | 5021 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
This is a fancy, animated, interactive gooey mouse cursor built with JavaScript(jQuery), CSS/CSS3 and SVG filters.
How to use it:
1. The HTML structure for the gooey cursor.
<div class="cursor"> <div class="dot"></div> <div class="dot"></div> <div class="dot"></div> <div class="dot"></div> <div class="dot"></div> </div>
2. Create the SVG filters for the gooey cursor.
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<defs>
<filter id="filter-name">
<feGaussianBlur
in="SourceGraphic"
stdDeviation="15"
result="my-blur" />
<feColorMatrix
in="my-blur"
mode="matrix"
values="
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 20 -8"
result="my-gooey" />
</filter>
</defs>
</svg>
3. The required CSS/CSS3 styles for the gooey cursor. Note that the SVG Filters should be applied to the cursor container.
.cursor {
width: 100%;
height: 100%;
overflow: hidden;
-webkit-filter: url("#filter-name");
filter: url("#filter-name");
}
.dot {
position: absolute;
width: 80px;
height: 80px;
top: 50%;
left: 50%;
margin-top: -40px;
margin-left: -40px;
background: #EEEEEE;
border-radius: 40px;
transition: ease .1s;
pointer-events: none;
}
.dot:nth-child(5){
background: #9C27B0;
transition: ease .1s;
transform: scale(1);
}
.dot:nth-child(4){
background: #B037AD;
transition: ease .12s;
transform: scale(.8);
}
.dot:nth-child(3){
background: #C245AA;
transition: ease .14s;
transform: scale(.6);
}
.dot:nth-child(2){
background: #D252A7;
transition: ease .16s;
transform: scale(.4);
}
.dot:nth-child(1){
background: #E35FA4;
transition: ease .18s;
transform: scale(.2);
}
4. Optionally, you can also load filters from external SVGs.
.cursor {
width: 100%;
height: 100%;
overflow: hidden;
filter: url('filters.svg#filter-name');
}
5. Insert the latest version of jQuery library into the document.
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
crossorigin="anonymous">
</script>
6. The JavaScript (jQuery script) to track the mouse position and activate the gooey cursor.
$(document).mousemove(function(e){
//Get 'container' offset:
o = $('.cursor').offset();
//Track mouse position:
$(".dot").css({
"top": e.pageY - o.top,
"left": e.pageX - o.left
});
});
This awesome jQuery plugin is developed by tobiasdev. For more Advanced Usages, please check the demo page or visit the official website.











