mars2 Posted March 11, 2020 Share Posted March 11, 2020 Site URL: https://codepen.io/sarahwfox/pen/pNrYGb Hey all! I was wondering if it was possible to add custom cursors like this (see URL) to my website? I see some tutorials online for single images, but would something like this work as well? I haven’t done any JaavScript code injection into this squarespace website yet, and would be thankful for any tips and help! Thanks for your time! Link to comment
humxahafeex Posted March 11, 2020 Share Posted March 11, 2020 Hi Yes it is 100% Possible to put it on site you Just have to follow the code which link you gave or Simply you can do is simply paste the following code in Code injection: Go to Settings > Advance > Code Injection and paste this code , save & Refresh the page , Voila It's Done. <script> var colour="random"; // "random" can be replaced with any valid colour ie: "red"... var sparkles=100;// increase of decrease for number of sparkles falling var x=ox=400; var y=oy=300; var swide=800; var shigh=600; var sleft=sdown=0; var tiny=new Array(); var star=new Array(); var starv=new Array(); var starx=new Array(); var stary=new Array(); var tinyx=new Array(); var tinyy=new Array(); var tinyv=new Array(); colours=new Array('#ff0000','#00ff00','#ffffff','#ff00ff','#ffa500','#ffff00','#00ff00','#ffffff','ff00ff') n = 10; y = 0; x = 0; n6=(document.getElementById&&!document.all); ns=(document.layers); ie=(document.all); d=(ns||ie)?'document.':'document.getElementById("'; a=(ns||n6)?'':'all.'; n6r=(n6)?'")':''; s=(ns)?'':'.style'; if (ns){ for (i = 0; i < n; i++) document.write('<layer name="dots'+i+'" top=0 left=0 width='+i/2+' height='+i/2+' bgcolor=#ff0000></layer>'); } if (ie) document.write('<div id="con" style="position:absolute;top:0px;left:0px"><div style="position:relative">'); if (ie||n6){ for (i = 0; i < n; i++) document.write('<div id="dots'+i+'" style="position:absolute;top:0px;left:0px;width:'+i/2+'px;height:'+i/2+'px;background:#ff0000;font-size:'+i/2+'"></div>'); } if (ie) document.write('</div></div>'); (ns||n6)?window.captureEvents(Event.MOUSEMOVE):0; function Mouse(evnt){ y = (ns||n6)?evnt.pageY+4 - window.pageYOffset:event.y+4; x = (ns||n6)?evnt.pageX+1:event.x+1; } (ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse; function animate(){ o=(ns||n6)?window.pageYOffset:0; if (ie)con.style.top=document.body.scrollTop + 'px'; for (i = 0; i < n; i++){ var temp1 = eval(d+a+"dots"+i+n6r+s); randcolours = colours[Math.floor(Math.random()*colours.length)]; (ns)?temp1.bgColor = randcolours:temp1.background = randcolours; if (i < n-1){ var temp2 = eval(d+a+"dots"+(i+1)+n6r+s); temp1.top = parseInt(temp2.top) + 'px'; temp1.left = parseInt(temp2.left) + 'px'; } else{ temp1.top = y+o + 'px'; temp1.left = x + 'px'; } } setTimeout("animate()",10); } animate(); window.onload=function() { if (document.getElementById) { var i, rats, rlef, rdow; for (var i=0; i<sparkles; i++) { var rats=createDiv(3, 3); rats.style.visibility="hidden"; rats.style.zIndex="999"; document.body.appendChild(tiny[i]=rats); starv[i]=0; tinyv[i]=0; var rats=createDiv(5, 5); rats.style.backgroundColor="transparent"; rats.style.visibility="hidden"; rats.style.zIndex="999"; var rlef=createDiv(1, 5); var rdow=createDiv(5, 1); rats.appendChild(rlef); rats.appendChild(rdow); rlef.style.top="2px"; rlef.style.left="0px"; rdow.style.top="0px"; rdow.style.left="2px"; document.body.appendChild(star[i]=rats); } set_width(); sparkle(); }} function sparkle() { var c; if (Math.abs(x-ox)>1 || Math.abs(y-oy)>1) { ox=x; oy=y; for (c=0; c<sparkles; c++) if (!starv[c]) { star[c].style.left=(starx[c]=x)+"px"; star[c].style.top=(stary[c]=y+1)+"px"; star[c].style.clip="rect(0px, 5px, 5px, 0px)"; star[c].childNodes[0].style.backgroundColor=star[c].childNodes[1].style.backgroundColor=(colour=="random")?newColour():colour; star[c].style.visibility="visible"; starv[c]=50; break; } } for (c=0; c<sparkles; c++) { if (starv[c]) update_star(c); if (tinyv[c]) update_tiny(c); } setTimeout("sparkle()", 40); } function update_star(i) { if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)"; if (starv[i]) { stary[i]+=1+Math.random()*3; starx[i]+=(i%5-2)/5; if (stary[i]<shigh+sdown) { star[i].style.top=stary[i]+"px"; star[i].style.left=starx[i]+"px"; } else { star[i].style.visibility="hidden"; starv[i]=0; return; } } else { tinyv[i]=50; tiny[i].style.top=(tinyy[i]=stary[i])+"px"; tiny[i].style.left=(tinyx[i]=starx[i])+"px"; tiny[i].style.width="2px"; tiny[i].style.height="2px"; tiny[i].style.backgroundColor=star[i].childNodes[0].style.backgroundColor; star[i].style.visibility="hidden"; tiny[i].style.visibility="visible" } } function update_tiny(i) { if (--tinyv[i]==25) { tiny[i].style.width="1px"; tiny[i].style.height="1px"; } if (tinyv[i]) { tinyy[i]+=1+Math.random()*3; tinyx[i]+=(i%5-2)/5; if (tinyy[i]<shigh+sdown) { tiny[i].style.top=tinyy[i]+"px"; tiny[i].style.left=tinyx[i]+"px"; } else { tiny[i].style.visibility="hidden"; tinyv[i]=0; return; } } else tiny[i].style.visibility="hidden"; } document.onmousemove=mouse; function mouse(e) { if (e) { y=e.pageY; x=e.pageX; } else { set_scroll(); y=event.y+sdown; x=event.x+sleft; } } window.onscroll=set_scroll; function set_scroll() { if (typeof(self.pageYOffset)=='number') { sdown=self.pageYOffset; sleft=self.pageXOffset; } else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) { sdown=document.body.scrollTop; sleft=document.body.scrollLeft; } else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) { sleft=document.documentElement.scrollLeft; sdown=document.documentElement.scrollTop; } else { sdown=0; sleft=0; } } window.onresize=set_width; function set_width() { var sw_min=999999; var sh_min=999999; if (document.documentElement && document.documentElement.clientWidth) { if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth; if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight; } if (typeof(self.innerWidth)=='number' && self.innerWidth) { if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth; if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight; } if (document.body.clientWidth) { if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth; if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight; } if (sw_min==999999 || sh_min==999999) { sw_min=800; sh_min=600; } swide=sw_min; shigh=sh_min; } function createDiv(height, width) { var div=document.createElement("div"); div.style.position="absolute"; div.style.height=height+"px"; div.style.width=width+"px"; div.style.overflow="hidden"; return (div); } function newColour() { var c=new Array(); c[0]=255; c[1]=Math.floor(Math.random()*256); c[2]=Math.floor(Math.random()*(256-c[1]/2)); c.sort(function(){return (0.5 - Math.random());}); return ("rgb("+c[0]+", "+c[1]+", "+c[2]+")"); } // ]]> </script> Hope it Helps 🙂 tuanphan and sayreambrosio 2 Link to comment
tuanphan Posted March 12, 2020 Share Posted March 12, 2020 Add above code to Home > Settings > Advanced > Code Injection > Footer. It will work (I just tested.) Thanks @humxahafeex sayreambrosio 1 Email me if you have need any help (free, of course.). Answer within 24 hours. Or send to forum message How to: Setup Password & Share url - Insert Custom CSS - Page Header - Upload Custom Font - Upload File - Find Block ID - Contact Customer Care Link to comment
rebeccasmith Posted January 16, 2021 Share Posted January 16, 2021 Hey all! I used the code provided by humxahafeex above, pasted into my header injection and works! However, I am experiencing one problem -- when i scroll down my website, it seems to scroll on forever and doesn't end at the footer as it should. The cursor code seems to be causing this because when i remove it, the problem is fixed. Anyone have any solutions to keeping this cursor but getting rid of the endless scroll? My website is smithrebecca.com for reference. Thanks! Link to comment
mars2 Posted May 28, 2021 Author Share Posted May 28, 2021 On 3/11/2020 at 5:11 AM, humxahafeex said: Hi Yes it is 100% Possible to put it on site you Just have to follow the code which link you gave or Simply you can do is simply paste the following code in Code injection: Go to Settings > Advance > Code Injection and paste this code , save & Refresh the page , Voila It's Done. <script> var colour="random"; // "random" can be replaced with any valid colour ie: "red"... var sparkles=100;// increase of decrease for number of sparkles falling var x=ox=400; var y=oy=300; var swide=800; var shigh=600; var sleft=sdown=0; var tiny=new Array(); var star=new Array(); var starv=new Array(); var starx=new Array(); var stary=new Array(); var tinyx=new Array(); var tinyy=new Array(); var tinyv=new Array(); colours=new Array('#ff0000','#00ff00','#ffffff','#ff00ff','#ffa500','#ffff00','#00ff00','#ffffff','ff00ff') n = 10; y = 0; x = 0; n6=(document.getElementById&&!document.all); ns=(document.layers); ie=(document.all); d=(ns||ie)?'document.':'document.getElementById("'; a=(ns||n6)?'':'all.'; n6r=(n6)?'")':''; s=(ns)?'':'.style'; if (ns){ for (i = 0; i < n; i++) document.write('<layer name="dots'+i+'" top=0 left=0 width='+i/2+' height='+i/2+' bgcolor=#ff0000></layer>'); } if (ie) document.write('<div id="con" style="position:absolute;top:0px;left:0px"><div style="position:relative">'); if (ie||n6){ for (i = 0; i < n; i++) document.write('<div id="dots'+i+'" style="position:absolute;top:0px;left:0px;width:'+i/2+'px;height:'+i/2+'px;background:#ff0000;font-size:'+i/2+'"></div>'); } if (ie) document.write('</div></div>'); (ns||n6)?window.captureEvents(Event.MOUSEMOVE):0; function Mouse(evnt){ y = (ns||n6)?evnt.pageY+4 - window.pageYOffset:event.y+4; x = (ns||n6)?evnt.pageX+1:event.x+1; } (ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse; function animate(){ o=(ns||n6)?window.pageYOffset:0; if (ie)con.style.top=document.body.scrollTop + 'px'; for (i = 0; i < n; i++){ var temp1 = eval(d+a+"dots"+i+n6r+s); randcolours = colours[Math.floor(Math.random()*colours.length)]; (ns)?temp1.bgColor = randcolours:temp1.background = randcolours; if (i < n-1){ var temp2 = eval(d+a+"dots"+(i+1)+n6r+s); temp1.top = parseInt(temp2.top) + 'px'; temp1.left = parseInt(temp2.left) + 'px'; } else{ temp1.top = y+o + 'px'; temp1.left = x + 'px'; } } setTimeout("animate()",10); } animate(); window.onload=function() { if (document.getElementById) { var i, rats, rlef, rdow; for (var i=0; i<sparkles; i++) { var rats=createDiv(3, 3); rats.style.visibility="hidden"; rats.style.zIndex="999"; document.body.appendChild(tiny[i]=rats); starv[i]=0; tinyv[i]=0; var rats=createDiv(5, 5); rats.style.backgroundColor="transparent"; rats.style.visibility="hidden"; rats.style.zIndex="999"; var rlef=createDiv(1, 5); var rdow=createDiv(5, 1); rats.appendChild(rlef); rats.appendChild(rdow); rlef.style.top="2px"; rlef.style.left="0px"; rdow.style.top="0px"; rdow.style.left="2px"; document.body.appendChild(star[i]=rats); } set_width(); sparkle(); }} function sparkle() { var c; if (Math.abs(x-ox)>1 || Math.abs(y-oy)>1) { ox=x; oy=y; for (c=0; c<sparkles; c++) if (!starv[c]) { star[c].style.left=(starx[c]=x)+"px"; star[c].style.top=(stary[c]=y+1)+"px"; star[c].style.clip="rect(0px, 5px, 5px, 0px)"; star[c].childNodes[0].style.backgroundColor=star[c].childNodes[1].style.backgroundColor=(colour=="random")?newColour():colour; star[c].style.visibility="visible"; starv[c]=50; break; } } for (c=0; c<sparkles; c++) { if (starv[c]) update_star(c); if (tinyv[c]) update_tiny(c); } setTimeout("sparkle()", 40); } function update_star(i) { if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)"; if (starv[i]) { stary[i]+=1+Math.random()*3; starx[i]+=(i%5-2)/5; if (stary[i]<shigh+sdown) { star[i].style.top=stary[i]+"px"; star[i].style.left=starx[i]+"px"; } else { star[i].style.visibility="hidden"; starv[i]=0; return; } } else { tinyv[i]=50; tiny[i].style.top=(tinyy[i]=stary[i])+"px"; tiny[i].style.left=(tinyx[i]=starx[i])+"px"; tiny[i].style.width="2px"; tiny[i].style.height="2px"; tiny[i].style.backgroundColor=star[i].childNodes[0].style.backgroundColor; star[i].style.visibility="hidden"; tiny[i].style.visibility="visible" } } function update_tiny(i) { if (--tinyv[i]==25) { tiny[i].style.width="1px"; tiny[i].style.height="1px"; } if (tinyv[i]) { tinyy[i]+=1+Math.random()*3; tinyx[i]+=(i%5-2)/5; if (tinyy[i]<shigh+sdown) { tiny[i].style.top=tinyy[i]+"px"; tiny[i].style.left=tinyx[i]+"px"; } else { tiny[i].style.visibility="hidden"; tinyv[i]=0; return; } } else tiny[i].style.visibility="hidden"; } document.onmousemove=mouse; function mouse(e) { if (e) { y=e.pageY; x=e.pageX; } else { set_scroll(); y=event.y+sdown; x=event.x+sleft; } } window.onscroll=set_scroll; function set_scroll() { if (typeof(self.pageYOffset)=='number') { sdown=self.pageYOffset; sleft=self.pageXOffset; } else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) { sdown=document.body.scrollTop; sleft=document.body.scrollLeft; } else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) { sleft=document.documentElement.scrollLeft; sdown=document.documentElement.scrollTop; } else { sdown=0; sleft=0; } } window.onresize=set_width; function set_width() { var sw_min=999999; var sh_min=999999; if (document.documentElement && document.documentElement.clientWidth) { if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth; if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight; } if (typeof(self.innerWidth)=='number' && self.innerWidth) { if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth; if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight; } if (document.body.clientWidth) { if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth; if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight; } if (sw_min==999999 || sh_min==999999) { sw_min=800; sh_min=600; } swide=sw_min; shigh=sh_min; } function createDiv(height, width) { var div=document.createElement("div"); div.style.position="absolute"; div.style.height=height+"px"; div.style.width=width+"px"; div.style.overflow="hidden"; return (div); } function newColour() { var c=new Array(); c[0]=255; c[1]=Math.floor(Math.random()*256); c[2]=Math.floor(Math.random()*(256-c[1]/2)); c.sort(function(){return (0.5 - Math.random());}); return ("rgb("+c[0]+", "+c[1]+", "+c[2]+")"); } // ]]> </script> Hope it Helps 🙂 Thank you so much!! I was wondering, would you know what parts of this CSS I would have to change to adjust the colors and the sparkle size? Thanks so much for your time!! @humxahafeex @tuanphan Link to comment
Cyperpunk-girl-333 Posted March 4, 2022 Share Posted March 4, 2022 On 3/12/2020 at 11:55 PM, tuanphan said: Add above code to Home > Settings > Advanced > Code Injection > Footer. It will work (I just tested.) Thanks @humxahafeex Hey is it possible to change the random rainbow colours to Gold HTML shades #bba14f', '#f9f295', '#f7ef8a',' #f7ef8a','#926f34','#ffff','#f7ef8a','#f7ef8a','#f7ef8a if so how would i do that? I tried to change the colour codes in the above css but it didn't work Link to comment
Cyperpunk-girl-333 Posted March 4, 2022 Share Posted March 4, 2022 Hey is it possible to change the random rainbow colours to Gold HTML shades #bba14f', '#f9f295', '#f7ef8a',' #f7ef8a','#926f34','#ffff','#f7ef8a','#f7ef8a','#f7ef8a if so how would i do that? I tried to change the colour codes in the above css but it didn't work @tuanphan Link to comment
tuanphan Posted March 6, 2022 Share Posted March 6, 2022 On 3/4/2022 at 8:36 PM, christina_marie_333 said: Hey is it possible to change the random rainbow colours to Gold HTML shades #bba14f', '#f9f295', '#f7ef8a',' #f7ef8a','#926f34','#ffff','#f7ef8a','#f7ef8a','#f7ef8a if so how would i do that? I tried to change the colour codes in the above css but it didn't work @tuanphan What is site url? Email me if you have need any help (free, of course.). Answer within 24 hours. Or send to forum message How to: Setup Password & Share url - Insert Custom CSS - Page Header - Upload Custom Font - Upload File - Find Block ID - Contact Customer Care Link to comment
Cyperpunk-girl-333 Posted March 7, 2022 Share Posted March 7, 2022 18 hours ago, tuanphan said: What is site url? https://celery-paddlefish-49zw.squarespace.com/ Password: delight02 Link to comment
connortomatoes Posted March 10, 2022 Share Posted March 10, 2022 On 3/11/2020 at 4:13 AM, mars2 said: Site URL: https://codepen.io/sarahwfox/pen/pNrYGb Hey all! I was wondering if it was possible to add custom cursors like this (see URL) to my website? I see some tutorials online for single images, but would something like this work as well? I haven’t done any JaavScript code injection into this squarespace website yet, and would be thankful for any tips and help! Thanks for your time! On 3/11/2020 at 5:11 AM, humxahafeex said: Hi Yes it is 100% Possible to put it on site you Just have to follow the code which link you gave or Simply you can do is simply paste the following code in Code injection: Go to Settings > Advance > Code Injection and paste this code , save & Refresh the page , Voila It's Done. <script> var colour="random"; // "random" can be replaced with any valid colour ie: "red"... var sparkles=100;// increase of decrease for number of sparkles falling var x=ox=400; var y=oy=300; var swide=800; var shigh=600; var sleft=sdown=0; var tiny=new Array(); var star=new Array(); var starv=new Array(); var starx=new Array(); var stary=new Array(); var tinyx=new Array(); var tinyy=new Array(); var tinyv=new Array(); colours=new Array('#ff0000','#00ff00','#ffffff','#ff00ff','#ffa500','#ffff00','#00ff00','#ffffff','ff00ff') n = 10; y = 0; x = 0; n6=(document.getElementById&&!document.all); ns=(document.layers); ie=(document.all); d=(ns||ie)?'document.':'document.getElementById("'; a=(ns||n6)?'':'all.'; n6r=(n6)?'")':''; s=(ns)?'':'.style'; if (ns){ for (i = 0; i < n; i++) document.write('<layer name="dots'+i+'" top=0 left=0 width='+i/2+' height='+i/2+' bgcolor=#ff0000></layer>'); } if (ie) document.write('<div id="con" style="position:absolute;top:0px;left:0px"><div style="position:relative">'); if (ie||n6){ for (i = 0; i < n; i++) document.write('<div id="dots'+i+'" style="position:absolute;top:0px;left:0px;width:'+i/2+'px;height:'+i/2+'px;background:#ff0000;font-size:'+i/2+'"></div>'); } if (ie) document.write('</div></div>'); (ns||n6)?window.captureEvents(Event.MOUSEMOVE):0; function Mouse(evnt){ y = (ns||n6)?evnt.pageY+4 - window.pageYOffset:event.y+4; x = (ns||n6)?evnt.pageX+1:event.x+1; } (ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse; function animate(){ o=(ns||n6)?window.pageYOffset:0; if (ie)con.style.top=document.body.scrollTop + 'px'; for (i = 0; i < n; i++){ var temp1 = eval(d+a+"dots"+i+n6r+s); randcolours = colours[Math.floor(Math.random()*colours.length)]; (ns)?temp1.bgColor = randcolours:temp1.background = randcolours; if (i < n-1){ var temp2 = eval(d+a+"dots"+(i+1)+n6r+s); temp1.top = parseInt(temp2.top) + 'px'; temp1.left = parseInt(temp2.left) + 'px'; } else{ temp1.top = y+o + 'px'; temp1.left = x + 'px'; } } setTimeout("animate()",10); } animate(); window.onload=function() { if (document.getElementById) { var i, rats, rlef, rdow; for (var i=0; i<sparkles; i++) { var rats=createDiv(3, 3); rats.style.visibility="hidden"; rats.style.zIndex="999"; document.body.appendChild(tiny[i]=rats); starv[i]=0; tinyv[i]=0; var rats=createDiv(5, 5); rats.style.backgroundColor="transparent"; rats.style.visibility="hidden"; rats.style.zIndex="999"; var rlef=createDiv(1, 5); var rdow=createDiv(5, 1); rats.appendChild(rlef); rats.appendChild(rdow); rlef.style.top="2px"; rlef.style.left="0px"; rdow.style.top="0px"; rdow.style.left="2px"; document.body.appendChild(star[i]=rats); } set_width(); sparkle(); }} function sparkle() { var c; if (Math.abs(x-ox)>1 || Math.abs(y-oy)>1) { ox=x; oy=y; for (c=0; c<sparkles; c++) if (!starv[c]) { star[c].style.left=(starx[c]=x)+"px"; star[c].style.top=(stary[c]=y+1)+"px"; star[c].style.clip="rect(0px, 5px, 5px, 0px)"; star[c].childNodes[0].style.backgroundColor=star[c].childNodes[1].style.backgroundColor=(colour=="random")?newColour():colour; star[c].style.visibility="visible"; starv[c]=50; break; } } for (c=0; c<sparkles; c++) { if (starv[c]) update_star(c); if (tinyv[c]) update_tiny(c); } setTimeout("sparkle()", 40); } function update_star(i) { if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)"; if (starv[i]) { stary[i]+=1+Math.random()*3; starx[i]+=(i%5-2)/5; if (stary[i]<shigh+sdown) { star[i].style.top=stary[i]+"px"; star[i].style.left=starx[i]+"px"; } else { star[i].style.visibility="hidden"; starv[i]=0; return; } } else { tinyv[i]=50; tiny[i].style.top=(tinyy[i]=stary[i])+"px"; tiny[i].style.left=(tinyx[i]=starx[i])+"px"; tiny[i].style.width="2px"; tiny[i].style.height="2px"; tiny[i].style.backgroundColor=star[i].childNodes[0].style.backgroundColor; star[i].style.visibility="hidden"; tiny[i].style.visibility="visible" } } function update_tiny(i) { if (--tinyv[i]==25) { tiny[i].style.width="1px"; tiny[i].style.height="1px"; } if (tinyv[i]) { tinyy[i]+=1+Math.random()*3; tinyx[i]+=(i%5-2)/5; if (tinyy[i]<shigh+sdown) { tiny[i].style.top=tinyy[i]+"px"; tiny[i].style.left=tinyx[i]+"px"; } else { tiny[i].style.visibility="hidden"; tinyv[i]=0; return; } } else tiny[i].style.visibility="hidden"; } document.onmousemove=mouse; function mouse(e) { if (e) { y=e.pageY; x=e.pageX; } else { set_scroll(); y=event.y+sdown; x=event.x+sleft; } } window.onscroll=set_scroll; function set_scroll() { if (typeof(self.pageYOffset)=='number') { sdown=self.pageYOffset; sleft=self.pageXOffset; } else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) { sdown=document.body.scrollTop; sleft=document.body.scrollLeft; } else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) { sleft=document.documentElement.scrollLeft; sdown=document.documentElement.scrollTop; } else { sdown=0; sleft=0; } } window.onresize=set_width; function set_width() { var sw_min=999999; var sh_min=999999; if (document.documentElement && document.documentElement.clientWidth) { if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth; if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight; } if (typeof(self.innerWidth)=='number' && self.innerWidth) { if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth; if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight; } if (document.body.clientWidth) { if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth; if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight; } if (sw_min==999999 || sh_min==999999) { sw_min=800; sh_min=600; } swide=sw_min; shigh=sh_min; } function createDiv(height, width) { var div=document.createElement("div"); div.style.position="absolute"; div.style.height=height+"px"; div.style.width=width+"px"; div.style.overflow="hidden"; return (div); } function newColour() { var c=new Array(); c[0]=255; c[1]=Math.floor(Math.random()*256); c[2]=Math.floor(Math.random()*(256-c[1]/2)); c.sort(function(){return (0.5 - Math.random());}); return ("rgb("+c[0]+", "+c[1]+", "+c[2]+")"); } // ]]> </script> Hope it Helps 🙂 Thank you! Any clue where in the code you are able to change the size and/or shape of the trailing +'s? Would love to be able to integrate a custom .png, say a star or something 🙂 Link to comment
PEARLERwork Posted September 28, 2022 Share Posted September 28, 2022 Is it possible to make a Javascript cursor like this only appear when certain elements are hovered over? @tuanphan 𝓚𝓪𝓽𝓲𝓮 ✦✦ ⓅⒺⒶⓇⓁⒺⓇ.ⓌⓄⓇⓀ ➸ Link to comment
tuanphan Posted September 30, 2022 Share Posted September 30, 2022 On 9/28/2022 at 8:00 AM, PEARLERwork said: Is it possible to make a Javascript cursor like this only appear when certain elements are hovered over? @tuanphan I'm not familiar with this script code. You try posting a new thread on forum. Email me if you have need any help (free, of course.). Answer within 24 hours. Or send to forum message How to: Setup Password & Share url - Insert Custom CSS - Page Header - Upload Custom Font - Upload File - Find Block ID - Contact Customer Care Link to comment
PEARLERwork Posted October 19, 2022 Share Posted October 19, 2022 On 1/16/2021 at 2:52 PM, rebeccasmith said: Hey all! I used the code provided by humxahafeex above, pasted into my header injection and works! However, I am experiencing one problem -- when i scroll down my website, it seems to scroll on forever and doesn't end at the footer as it should. The cursor code seems to be causing this because when i remove it, the problem is fixed. Anyone have any solutions to keeping this cursor but getting rid of the endless scroll? My website is smithrebecca.com for reference. Thanks! @rebeccasmith Did you get an answer to this in the end? 𝓚𝓪𝓽𝓲𝓮 ✦✦ ⓅⒺⒶⓇⓁⒺⓇ.ⓌⓄⓇⓀ ➸ Link to comment
suzanne Posted January 11 Share Posted January 11 (edited) Hi, I'm also wondering if @rebeccasmith you figured this out. Same problem. I can successfully add inject the code and it works at the top of the site, but then starts to drag and doesn't work for clicking links or buttons. Also, @tuanphan is this possible: https://codepen.io/tobiasdev/pen/pLzwzE? Thanks! Edited January 11 by suzanne Link to comment
tuanphan Posted January 15 Share Posted January 15 On 1/11/2023 at 9:27 PM, suzanne said: Hi, I'm also wondering if @rebeccasmith you figured this out. Same problem. I can successfully add inject the code and it works at the top of the site, but then starts to drag and doesn't work for clicking links or buttons. Also, @tuanphan is this possible: https://codepen.io/tobiasdev/pen/pLzwzE? Thanks! I'm not sure. Try adding this to Code Injection > Footer <div class="box"> <div class="dot"></div> <div class="dot"></div> <div class="dot"></div> <div class="dot"></div> <div class="dot"></div> </div> <!-- SVG Filters --> <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> <!-- Color Matrix (RGBA): ===|===================== | R | G | B | A | + ===|===================== R | 1 | 0 | 0 | 0 | 0 ===|===================== G | 0 | 1 | 0 | 0 | 0 ===|===================== B | 0 | 0 | 1 | 0 | 0 ===|===================== A | 0 | 0 | 0 | 20 | -8 <= Tweak these values. ===|===================== --> <style> /* Container */ .box { width: 100%; height: 100%; overflow: hidden; /* SVG Filters should be applied to the container */ -webkit-filter: url("#filter-name"); filter: url("#filter-name"); /* Load filters from external SVGs (optional): filter: url('filters.svg#filter-name'); */ } /* Dot */ .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); } </style> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script> <script> /* =============================================================== Hi! Welcome to my little playground! My name is Tobias Bogliolo. 'Open source' by default and always 'responsive', I'm a publicist, visual designer and frontend developer based in Barcelona. Here you will find some of my personal experiments. Sometimes usefull, sometimes simply for fun. You are free to use them for whatever you want but I would appreciate an attribution from my work. I hope you enjoy it. =============================================================== */ $(document).mousemove(function(e){ //Get 'container' offset: o = $('.box').offset(); //Track mouse position: $(".dot").css({ "top": e.pageY - o.top, "left": e.pageX - o.left }); }); </script> Email me if you have need any help (free, of course.). Answer within 24 hours. Or send to forum message How to: Setup Password & Share url - Insert Custom CSS - Page Header - Upload Custom Font - Upload File - Find Block ID - Contact Customer Care Link to comment
SaniceMarlow Posted March 3 Share Posted March 3 On 3/11/2020 at 11:11 PM, humxahafeex said: Hi Yes it is 100% Possible to put it on site you Just have to follow the code which link you gave or Simply you can do is simply paste the following code in Code injection: Go to Settings > Advance > Code Injection and paste this code , save & Refresh the page , Voila It's Done. <script> var colour="random"; // "random" can be replaced with any valid colour ie: "red"... var sparkles=100;// increase of decrease for number of sparkles falling var x=ox=400; var y=oy=300; var swide=800; var shigh=600; var sleft=sdown=0; var tiny=new Array(); var star=new Array(); var starv=new Array(); var starx=new Array(); var stary=new Array(); var tinyx=new Array(); var tinyy=new Array(); var tinyv=new Array(); colours=new Array('#ff0000','#00ff00','#ffffff','#ff00ff','#ffa500','#ffff00','#00ff00','#ffffff','ff00ff') n = 10; y = 0; x = 0; n6=(document.getElementById&&!document.all); ns=(document.layers); ie=(document.all); d=(ns||ie)?'document.':'document.getElementById("'; a=(ns||n6)?'':'all.'; n6r=(n6)?'")':''; s=(ns)?'':'.style'; if (ns){ for (i = 0; i < n; i++) document.write('<layer name="dots'+i+'" top=0 left=0 width='+i/2+' height='+i/2+' bgcolor=#ff0000></layer>'); } if (ie) document.write('<div id="con" style="position:absolute;top:0px;left:0px"><div style="position:relative">'); if (ie||n6){ for (i = 0; i < n; i++) document.write('<div id="dots'+i+'" style="position:absolute;top:0px;left:0px;width:'+i/2+'px;height:'+i/2+'px;background:#ff0000;font-size:'+i/2+'"></div>'); } if (ie) document.write('</div></div>'); (ns||n6)?window.captureEvents(Event.MOUSEMOVE):0; function Mouse(evnt){ y = (ns||n6)?evnt.pageY+4 - window.pageYOffset:event.y+4; x = (ns||n6)?evnt.pageX+1:event.x+1; } (ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse; function animate(){ o=(ns||n6)?window.pageYOffset:0; if (ie)con.style.top=document.body.scrollTop + 'px'; for (i = 0; i < n; i++){ var temp1 = eval(d+a+"dots"+i+n6r+s); randcolours = colours[Math.floor(Math.random()*colours.length)]; (ns)?temp1.bgColor = randcolours:temp1.background = randcolours; if (i < n-1){ var temp2 = eval(d+a+"dots"+(i+1)+n6r+s); temp1.top = parseInt(temp2.top) + 'px'; temp1.left = parseInt(temp2.left) + 'px'; } else{ temp1.top = y+o + 'px'; temp1.left = x + 'px'; } } setTimeout("animate()",10); } animate(); window.onload=function() { if (document.getElementById) { var i, rats, rlef, rdow; for (var i=0; i<sparkles; i++) { var rats=createDiv(3, 3); rats.style.visibility="hidden"; rats.style.zIndex="999"; document.body.appendChild(tiny[i]=rats); starv[i]=0; tinyv[i]=0; var rats=createDiv(5, 5); rats.style.backgroundColor="transparent"; rats.style.visibility="hidden"; rats.style.zIndex="999"; var rlef=createDiv(1, 5); var rdow=createDiv(5, 1); rats.appendChild(rlef); rats.appendChild(rdow); rlef.style.top="2px"; rlef.style.left="0px"; rdow.style.top="0px"; rdow.style.left="2px"; document.body.appendChild(star[i]=rats); } set_width(); sparkle(); }} function sparkle() { var c; if (Math.abs(x-ox)>1 || Math.abs(y-oy)>1) { ox=x; oy=y; for (c=0; c<sparkles; c++) if (!starv[c]) { star[c].style.left=(starx[c]=x)+"px"; star[c].style.top=(stary[c]=y+1)+"px"; star[c].style.clip="rect(0px, 5px, 5px, 0px)"; star[c].childNodes[0].style.backgroundColor=star[c].childNodes[1].style.backgroundColor=(colour=="random")?newColour():colour; star[c].style.visibility="visible"; starv[c]=50; break; } } for (c=0; c<sparkles; c++) { if (starv[c]) update_star(c); if (tinyv[c]) update_tiny(c); } setTimeout("sparkle()", 40); } function update_star(i) { if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)"; if (starv[i]) { stary[i]+=1+Math.random()*3; starx[i]+=(i%5-2)/5; if (stary[i]<shigh+sdown) { star[i].style.top=stary[i]+"px"; star[i].style.left=starx[i]+"px"; } else { star[i].style.visibility="hidden"; starv[i]=0; return; } } else { tinyv[i]=50; tiny[i].style.top=(tinyy[i]=stary[i])+"px"; tiny[i].style.left=(tinyx[i]=starx[i])+"px"; tiny[i].style.width="2px"; tiny[i].style.height="2px"; tiny[i].style.backgroundColor=star[i].childNodes[0].style.backgroundColor; star[i].style.visibility="hidden"; tiny[i].style.visibility="visible" } } function update_tiny(i) { if (--tinyv[i]==25) { tiny[i].style.width="1px"; tiny[i].style.height="1px"; } if (tinyv[i]) { tinyy[i]+=1+Math.random()*3; tinyx[i]+=(i%5-2)/5; if (tinyy[i]<shigh+sdown) { tiny[i].style.top=tinyy[i]+"px"; tiny[i].style.left=tinyx[i]+"px"; } else { tiny[i].style.visibility="hidden"; tinyv[i]=0; return; } } else tiny[i].style.visibility="hidden"; } document.onmousemove=mouse; function mouse(e) { if (e) { y=e.pageY; x=e.pageX; } else { set_scroll(); y=event.y+sdown; x=event.x+sleft; } } window.onscroll=set_scroll; function set_scroll() { if (typeof(self.pageYOffset)=='number') { sdown=self.pageYOffset; sleft=self.pageXOffset; } else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) { sdown=document.body.scrollTop; sleft=document.body.scrollLeft; } else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) { sleft=document.documentElement.scrollLeft; sdown=document.documentElement.scrollTop; } else { sdown=0; sleft=0; } } window.onresize=set_width; function set_width() { var sw_min=999999; var sh_min=999999; if (document.documentElement && document.documentElement.clientWidth) { if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth; if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight; } if (typeof(self.innerWidth)=='number' && self.innerWidth) { if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth; if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight; } if (document.body.clientWidth) { if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth; if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight; } if (sw_min==999999 || sh_min==999999) { sw_min=800; sh_min=600; } swide=sw_min; shigh=sh_min; } function createDiv(height, width) { var div=document.createElement("div"); div.style.position="absolute"; div.style.height=height+"px"; div.style.width=width+"px"; div.style.overflow="hidden"; return (div); } function newColour() { var c=new Array(); c[0]=255; c[1]=Math.floor(Math.random()*256); c[2]=Math.floor(Math.random()*(256-c[1]/2)); c.sort(function(){return (0.5 - Math.random());}); return ("rgb("+c[0]+", "+c[1]+", "+c[2]+")"); } // ]]> </script> Hope it Helps 🙂 Hi there, This works beautifully! However as others have mentioned it creates an infinite scrolling effect where the page does not end at the footer. Do you know how to fix this? Thank you! Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment