Pages

Ads 468x60px

Efek-Efek pada Kursor

Supaya tampilan kursor di blog tidak membosankan, mungkin kita perlu menambahkan sedikit efek animasi pada kursor kita. Kali ini saya punya beberapa cara menghias kursor, caranya:

  1. Login ke Blogger
  2. Pilih Tata Letak
  3. Pilih Tambah Gadget
  4. Pilih HTML/Javascript
  5. Masukkan salah satu dari kode berikut.
ATAU

  1. Login ke Blogger
  2. Pilih Template
  3. Pilih Edit HTML
  4. Taruh salah satu kode berikut diatas </head>

1. Membuat Kursor dengan Efek Gelembung


<script type="text/javascript">
var colours=new Array("#F781BE", "#F781BE", "#F781BE", "#F781BE", "#F781BE"); // warna untuk border-top, border-right, border-bottom, border-left dan background gelembung
var bubbles=100; // jumlah maksmal gelembung
var x=ox=400;
var y=oy=300;
var swide=800;
var shigh=600;
var sleft=sdown=0;
var bubb=new Array();
var bubbx=new Array();
var bubby=new Array();
var bubbs=new Array();
window.onload=function() { if (document.getElementById) {
var rats, div;
for (var i=0; i<bubbles; i++) {
rats=createDiv("3px", "3px");
rats.style.visibility="hidden";
div=createDiv("auto", "auto");
rats.appendChild(div);
div=div.style;
div.top="1px";
div.left="0px";
div.bottom="1px";
div.right="0px";
div.borderLeft="1px solid "+colours[3];
div.borderRight="1px solid "+colours[1];
div=createDiv("auto", "auto");
rats.appendChild(div);
div=div.style;
div.top="0px";
div.left="1px";
div.right="1px";
div.bottom="0px"
div.borderTop="1px solid "+colours[0];
div.borderBottom="1px solid "+colours[2];
div=createDiv("auto", "auto");
rats.appendChild(div);
div=div.style;
div.left="1px";
div.right="1px";
div.bottom="1px";
div.top="1px";
div.backgroundColor=colours[4];
div.opacity=0.5;
if (document.all) div.filter="alpha(opacity=50)";
document.body.appendChild(rats);
bubb[i]=rats.style;
}
set_scroll();
set_width();
bubble();
}}

function bubble() {
var c;
if (x!=ox || y!=oy){
ox=x;
oy=y;
for (c=0; c<bubbles; c++) if (!bubby[c]) {
bubb[c].left=(bubbx[c]=x)+"px";
bubb[c].top=(bubby[c]=y)+"px";
bubb[c].width="3px";
bubb[c].height="3px"
bubb[c].visibility="visible";
bubbs[c]=3;
break;
}
}

for (c=0; c<bubbles; c++) if (bubby[c]) update_bubb(c);
setTimeout("bubble()", 40);
}

function update_bubb(i) {
if (bubby[i]) {
bubby[i]-=bubbs[i]/2+i%2;
bubbx[i]+=(i%5-2)/5;
if (bubby[i]>sdown && bubbx[i]>0) {
if (Math.random()<bubbs[i]/shigh*2 && bubbs[i]++<8) {
bubb[i].width=bubbs[i]+"px";
bubb[i].height=bubbs[i]+"px";
}
bubb[i].top=bubby[i]+"px";
bubb[i].left=bubbx[i]+"px";
}
else {
bubb[i].visibility="hidden";
bubby[i]=0;
return;
}
}
}
document.onmousemove=mouse;

function mouse(e) {
set_scroll();
y=(e)?e.pageY:event.y+sleft;
x=(e)?e.pageX:event.x+sdown;
}

window.onresize=set_width;

function set_width() {
if (document.documentElement && document.documentElement.clientWidth) {
swide=document.documentElement.clientWidth;
shigh=document.documentElement.clientHeight;
}
else if (typeof(self.innerHeight)=="number") {
swide=self.innerWidth;
shigh=self.innerHeight;
}
else if (document.body.clientWidth) {
swide=document.body.clientWidth;
shigh=document.body.clientHeight;
}
else {
swide=800;
shigh=600;
}
}

window.onscroll=set_scroll;

function set_scroll() {
if (typeof(self.pageYOffset)=="number") {
sdown=self.pageYOffset;
sleft=self.pageXOffset;
}
else if (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;
}
}

function createDiv(height, width) {
var div=document.createElement("div");
div.style.position="absolute";
div.style.height=height;
div.style.width=width;
div.style.overflow="hidden";
return (div);
}
</script>

2. Membuat Kursor dengan Efek Bintang Berjatuhan

<script type="text/javascript">
var colour="White"; //Warna bintang
var sparkles=65; //Jumlah bintang
     
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();
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";
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";
 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 (x!=ox || y!=oy) {
 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)+"px";
 star[c].style.clip="rect(0px, 5px, 5px, 0px)";
 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;
if (stary[i]<shigh+sdown) {
star[i].style.top=stary[i]+"px";
starx[i]+=(i%5-2)/5;
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";
 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;
 if (tinyy[i]<shigh+sdown) {
 tiny[i].style.top=tinyy[i]+"px";
 tinyx[i]+=(i%5-2)/5;
 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) {
 set_scroll();
 y=(e)?e.pageY:event.y+sdown;
 x=(e)?e.pageX:event.x+sleft;
}
 function set_scroll() {
 if (typeof(self.pageYOffset)=="number") {
 sdown=self.pageYOffset;
                sleft=self.pageXOffset;
              }
              else if (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() {
if (typeof(self.innerWidth)=="number") {
swide=self.innerWidth;
shigh=self.innerHeight;
}
else if (document.documentElement && document.documentElement.clientWidth) {
 swide=document.documentElement.clientWidth;
 shigh=document.documentElement.clientHeight;
}
 else if (document.body.clientWidth) {
 swide=document.body.clientWidth;
 shigh=document.body.clientHeight;
}
}
 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";
 div.style.backgroundColor=colour;
 return (div);
}
// ]]>
</script> 

3. Membuat Kursor diikuti Bintang Kelap-Kelip

<script type="text/javascript">
imgpre = new Image();
imgpre.scr = "http://blogparts.spark-atv.com/img1/m_star01.gif";//Gambar bintang kelap-kelip
imgpre.scr = "http://blogparts.spark-atv.com/img1/m_star02.gif";//Gambar bintang kelap-kelip
imgpre.scr = "http://blogparts.spark-atv.com/img1/m_star03.gif";//Gambar bintang kelap-kelip

kira = new Array();
kira[0] = "http://blogparts.spark-atv.com/img1/m_star01.gif";
kira[1] = "http://blogparts.spark-atv.com/img1/m_star02.gif";
kira[2] = "http://blogparts.spark-atv.com/img1/m_star03.gif";
var kira_s = 2;

setTimeout("kirakira01()",0);

var userAgent = window.navigator.userAgent.toLowerCase();
var appVersion = window.navigator.appVersion.toLowerCase();

if(document.layers){document.captureEvents(Event.IMGMOVE);}
document.onmousemove=moveImg;

function moveImg(theEvent){
if (userAgent.indexOf("msie") > -1) {
CH01 = document.documentElement.scrollTop;
CH02 = document.body.scrollTop;
if(CH01 > CH02 ){
doc_W = event.clientX + document.documentElement.scrollLeft;
doc_H = event.clientY  + document.documentElement.scrollTop;
}else{
doc_W = event.clientX + document.body.scrollLeft;
doc_H = event.clientY  + document.body.scrollTop;
}
} else {
doc_W = theEvent.pageX;
doc_H = theEvent.pageY;
}
}

kn=15;
kxp=new Array();
kyp=new Array();
dotk=new Array();
var kp=0;
var doc_W;
var doc_H;
timerID_k=0;
kira_n = kira_s;

function kirakira01() { 
if(kxp[kn]!=doc_W||kyp[kn]!=doc_H){
kp=kp%kn+1;
kxp[kp] = doc_W; 
kyp[kp] = doc_H;
document.getElementById('dotk'+kp).style.visibility='visible';
document.getElementById('dotk'+kp).style.top = kyp[kp]+"px";
document.getElementById('dotk'+kp).style.left = kxp[kp]+"px";
}else{
for(km=1;km<(kn+1);km++){
document.getElementById('dotk'+km).style.visibility='hidden';
}
}
timerID_k=setTimeout("kirakira01()",100);
}

for (km=1;km<(kn+1);km++){
document.write("
"); if (kira_n == 0) { kira_n = kira_s; } else { kira_n -= 1; } } </script>

Ket:
Gambar yang digunakan di imgpre.src harus sama dengan di kira [0/1/2]

4. Membuat Kursor Bintang yang Tergantung


<style type="text/css"> 
.dot{
       position:fixed;
       padding:0;
       margin:0;
       border:0 solid;
       border-radius:6px;
       box-shadow:0 0 0 #fff;
       z-index:10;
}
#dot0{visibility: hidden;}
</style> 

<script type="text/javascript"> 
//<![CDATA[
function elastic_trail() {
 var f = 8;  //Jumlah gambar kursor yang muncul
 var g = "http://www.myspacediesel.com/materials/myspace_glitter_graphics/stars/glitter_star12.gif"; //Gambar bintang
 var h = 0.01;
 var k = 35; //jarak tiap gambar di kursor
 var l = 10;
 var m = 1;
 var o = 0;
 var p = 50;
 var q = 10;
 var r = 0.1;
 var s = 0.1;
 var t = 12; //ukuran gambar di kursor
 var u = 0.75;
 var v = 0; 
 var w = 0;
 for (var i = f - 1; i > -1; --i) {
  with(document) {
   write('<div class="dot" id="dot' + i + '">\n');
   write('<img src="' + g + '" height="' + t + '" width="' + t + '" alt="">\n');
   write("</div>\n")
  }
 }
 /*@cc_on@*/
 /*@if(@_jscript_version>=5)if(navigator.appVersion.replace(/^.*MSIE
 (\d+).*$/,'$1')<=6){var x=function(a,n){var 
b='scroll'+a,d=document,c='compatMode';return 
d[c]&&d[c]=='CSS1Compat'?d.documentElement[b]+n+'px':d.body[b]+n+'px'};document.write('<style
 type="text/css">.dot {position: absolute;}body {background: url(foo)
 fixed;}<\/style>')};@end@*/
 var y = function () {
  return (document.compatMode && 
document.compatMode.indexOf("CSS") != -1) ? document.documentElement: 
document.body
 };
 var z = document.layers ? "": "px";
 elastic_trail.prototype.dot = function (i) {
  this.X = v;
  this.Y = w;
  this.dx = 0;
  this.dy = 0;
  if (document.layers) {
   this.obj = document["dot" + i]
  } else {
   if (document.all) {
    this.obj = document.all["dot" + i].style
   } else {
    if (document.getElementById) {
     this.obj = document.getElementById("dot" + i).style
    } else {
     return
    }
   }
  }
 };
 var A = new Array();
 for (var i = 0; i < f; i++) {
  A[i] = new this.dot(i)
 }
 for (i = 0; i < f; i++) {
  A[i].obj.left = typeof x == "function" ? x("Left", A[i].X) : Math.round(A[i].X) + z;
  A[i].obj.top = typeof x == "function" ? x("Top", A[i].Y) : A[i].Y + z
 }
 var B = this;
 setInterval(function () {
 B.animate()
 },
 20);
 function MoveHandler(e) {
  v = e.pageX - pageXOffset;
  w = e.pageY - pageYOffset;
  return true
 }
function MoveHandlerIE() {
  v = window.event.x;
  w = window.event.y
 }
 if (document.addEventListener) {
  document.addEventListener("mousemove", MoveHandler, false)
 } else {
  if (document.attachEvent) {
   document.attachEvent("onmousemove", MoveHandlerIE)
  } else {
   if (document.captureEvents) {
    document.captureEvents(Event.MOUSEMOVE);
    document.onmousemove = MoveHandler
   }
  }
 }
 elastic_trail.prototype.vec = function (X, Y) {
  this.X = X;
  this.Y = Y
 };
 elastic_trail.prototype.springForce = function (i, j, a) {
  var b = (A[i].X - A[j].X);
  var c = (A[i].Y - A[j].Y);
  var d = Math.sqrt(b * b + c * c);
  if (d > k) {
   var e = l * (d - k);
   a.X += (b / d) * e;
   a.Y += (c / d) * e
  }
 };
 elastic_trail.prototype.animate = function () {
  var a = 0;
  A[0].X = v;
  A[0].Y = w;
  a = 1;
  for (var i = a; i < f; i++) {
   var b = new this.vec(0, 0);
   if (i > 0) {
    this.springForce(i - 1, i, b)
   }
   if (i < (f - 1)) {
    this.springForce(i + 1, i, b)
   }
   var c = new this.vec( - A[i].dx * q, -A[i].dy * q);
   var d = new this.vec((b.X + c.X) / m + o, (b.Y + c.Y) / m + p);
   A[i].dx += (h * d.X);
   A[i].dy += (h * d.Y);
   if (Math.abs(A[i].dx) < r && Math.abs(A[i].dy) 
< r && Math.abs(d.X) < s && Math.abs(d.Y) < s) {
    A[i].dx = 0;
    A[i].dy = 0
   }
   A[i].X += A[i].dx;
   A[i].Y += A[i].dy;
   var e, width;
   if (window.innerWidth) {
    e = window.innerHeight;
    width = y().clientWidth && window.innerWidth - 
y().clientWidth == 17 || window.innerWidth - y().clientWidth == 15 ? 
y().clientWidth: window.innerWidth
   } else {
    e = y().clientHeight - Math.ceil(t / 2);
    width = y().clientWidth
   }
   if (A[i].Y >= e - t - 1) {
    if (A[i].dy > 0) {
     A[i].dy = u * -A[i].dy
    }
    A[i].Y = e - t - 1
   }
   if (A[i].X >= width - t) {
    if (A[i].dx > 0) {
     A[i].dx = u * -A[i].dx
    }
    A[i].X = width - t - 1
   }
   if (A[i].X < 0) {
    if (A[i].dx < 0) {
     A[i].dx = u * -A[i].dx
  }
    A[i].X = 0
   }
   A[i].obj.left = typeof x == "function" ? x("Left", A[i].X) : Math.round(A[i].X) + z;
   A[i].obj.top = typeof x == "function" ? x("Top", A[i].Y) : A[i].Y + z
  }
 }
}
new elastic_trail();
//]]>
</script>

5. Membuat Kursor Bergambar Animasi

<style type='text/css'> 
HTML,BODY{cursor: url(url kursor), auto;} </style> 

Ada banyak model kursor yang bisa kita gunakan, dapat kita jumpai di
http://www.totallyfreecursors.com/

Contoh Penggunaan
<style type='text/css'> 
HTML,BODY{cursor: url(http://downloads.totallyfreecursors.com/public/CursorsLogo88-31.gif), auto;} </style> 

Demo

Coba sendiri

Sumber

1, 2, 3, 4

0 komentar:

Posting Komentar