[티스토리 태그]마우스따라 하트뿅뿅 나오게하는 태그!
2018. 11. 12.

 

이번엔 마우스 움직임에 따라

하트가 뿅뿅나오는 태그 사용하기!

 

스킨바꿀때마다 복사해서 쓰려고....ㅋㅋㅋ

 

더보기

<script type="text/javascript">

// <![CDATA[

var colours=new Array('#A3E7D8', '#FFDDDD', '#F7F5FE', '#FFFF88', '#FDB4BF', '#B3B3D9' 

); // colours of the hearts

var minisize=12; // smallest size of hearts in pixels

var maxisize=18; // biggest size of hearts in pixels

var hearts=60; // maximum number of hearts on screen

var over_or_under="over"; // set to "over" for hearts to always be on top, or "under" to allow them to float behind other objects

 

/*****************************

*JavaScript Love Heart Cursor*

*  (c)2013+ mf2fm web-design *

*   http://www.mf2fm.com/rv  *

*  DON'T EDIT BELOW THIS BOX *

*****************************/

var x=ox=400;

var y=oy=300;

var swide=800;

var shigh=600;

var sleft=sdown=0;

var herz=new Array();

var herzx=new Array();

var herzy=new Array();

var herzs=new Array();

var kiss=false;

 

if (typeof('addRVLoadEvent')!='function') function addRVLoadEvent(funky) {

  var oldonload=window.onload;

  if (typeof(oldonload)!='function') window.onload=funky;

  else window.onload=function() {

    if (oldonload) oldonload();

    funky();

  }

}

 

addRVLoadEvent(mwah);

 

function mwah() { if (document.getElementById) {

  var i, heart;

  for (i=0; i<hearts; i++) {

    heart=createDiv("auto", "auto");

    heart.style.visibility="hidden";

heart.style.zIndex=(over_or_under=="over")?"1001":"0";

    heart.style.color=colours[i%colours.length];

heart.style.pointerEvents="none";

    if (navigator.appName=="Microsoft Internet Explorer") heart.style.filter="alpha(opacity=75)";

    else heart.style.opacity=0.75;

    heart.appendChild(document.createTextNode(String.fromCharCode(9829)));

    document.body.appendChild(heart);

    herz[i]=heart;

herzy[i]=false;

  }

  set_scroll();

  set_width();

  herzle();

}}

 

function herzle() {

  var c;

  if (Math.abs(x-ox)>1 || Math.abs(y-oy)>1) {

    ox=x;

    oy=y;

    for (c=0; c<hearts; c++) if (herzy[c]===false) {

  herz[c].firstChild.nodeValue=String.fromCharCode(9829);

      herz[c].style.left=(herzx[c]=x-minisize/2)+"px";

      herz[c].style.top=(herzy[c]=y-minisize)+"px";

      herz[c].style.fontSize=minisize+"px";

  herz[c].style.fontWeight='normal';

      herz[c].style.visibility='visible';

      herzs[c]=minisize;

      break;

    }

  }

  for (c=0; c<hearts; c++) if (herzy[c]!==false) blow_me_a_kiss(c);

  setTimeout("herzle()", 40);

}

 

document.onmousedown=pucker;

document.onmouseup=function(){clearTimeout(kiss);};

 

function pucker() {

  ox=-1;

  oy=-1;

  kiss=setTimeout('pucker()', 100);

}

 

function blow_me_a_kiss(i) {

  herzy[i]-=herzs[i]/minisize+i%2;

  herzx[i]+=(i%5-2)/5;

  if (herzy[i]<sdown-herzs[i] || herzx[i]<sleft-herzs[i] || herzx[i]>sleft+swide-herzs[i]) {

    herz[i].style.visibility="hidden";

    herzy[i]=false;

  }

  else if (herzs[i]>minisize+2 && Math.random()<.5/hearts) break_my_heart(i);

  else {

    if (Math.random()<maxisize/herzy[i] && herzs[i]<maxisize) herz[i].style.fontSize=(++herzs[i])+"px";

    herz[i].style.top=herzy[i]+"px";

    herz[i].style.left=herzx[i]+"px";

  }

}

 

function break_my_heart(i) {

  var t;

  herz[i].firstChild.nodeValue=String.fromCharCode(9676);

  herz[i].style.fontWeight='bold';

  herzy[i]=false;

  for (t=herzs[i]; t<=maxisize; t++) setTimeout('herz['+i+'].style.fontSize="'+t+'px"', 60*(t-herzs[i]));

  setTimeout('herz['+i+'].style.visibility="hidden";', 60*(t-herzs[i]));

}

 

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.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;

}

 

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;

  }

}

 

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";

  div.style.backgroundColor="transparent";

  return (div);

}

// ]]>

</script>

 

 

*사용법*

태그를 전체복사해서

스킨편집 - HTML에서 </head>를 찾으세욧!

</head>바로 앞에다가 붙여넣기하면 끝ㅎㅎ

 

이태그는 파스텔톤으로 색상 수정된 태그입니당

 

색상과 하트 크기, 갯수를 바꾸고 싶다면,

제일위에

var colours=new Array('#A3E7D8', '#FFDDDD', '#F7F5FE', '#FFFF88', '#FDB4BF', '#B3B3D9' 

); // colours of the hearts

var minisize=12; // smallest size of hearts in pixels

var maxisize=18; // biggest size of hearts in pixels

var hearts=60; // maximum number of hearts on screen

 

이 부분을 원하는대로 바꿔주면 됩니다.

(색깔, 하트 최소크기, 최대크기, 하트 갯수)

다른건 건드릴 필요 없어요

•ᴗ•

팅커벨효과↘

더보기

<script type="text/javascript">
// <![CDATA[
var colour="random"; // in addition to "random" can be set to any valid colour eg "#f0f" or "red"
var sparkles=50;

/****************************
*  Tinkerbell Magic Sparkle *
*(c)2005-13 mf2fm web-design*
*  http://www.mf2fm.com/rv  *
* DON'T EDIT BELOW THIS BOX *
****************************/
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";
    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>

'Tip' 카테고리의 다른 글

[티스토리 태그]더보기 가운데 정렬하기  (0) 2018.11.12
myoskin