Интересен ефект падащи частици от курсора

superactro

Registered
Как мога да променя посоката в която падат частиците, от надолу - нагоре, вместо да падат да се издигат. Коя част от кода трябва да променя. :)
Демо: http://yalexandrov.com/phia/sparkle.html
ПП.И още един въпрос не знам дали е само при мен но във IE и Firefox върви добре но в crome понякога не започва (не всеки път)
Благодаря предварително.
[js]
<script type="text/javascript">(function() { var a=window;function c(b){this.t={};this.tick=function(b,i,d){d=void 0!=d?d:(new Date).getTime();this.t=[d,i]};this.tick("start",null,b)}var f=new c;a.jstiming={Timer:c,load:f};try{var g=null;a.chrome&&a.chrome.csi&&(g=Math.floor(a.chrome.csi().pageT));null==g&&a.gtbExternal&&(g=a.gtbExternal.pageT());null==g&&a.external&&(g=a.external.pageT);g&&(a.jstiming.pt=g)}catch(h){};a.tickAboveFold=function(b){var e=0;if(b.offsetParent){do e+=b.offsetTop;while(b=b.offsetParent)}b=e;750>=b&&a.jstiming.load.tick("aft")};var j=!1;function k(){j||(j=!0,a.jstiming.load.tick("firstScrollTime"))}a.addEventListener?a.addEventListener("scroll",k,!1):a.attachEvent("onscroll",k);
})();</script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<meta name="generator" content="Blogger" />
<link rel="icon" type="image/vnd.microsoft.icon" href="http://www.blogger.com/favicon.ico"/>
<link rel="alternate" type="application/atom+xml" title="Glitter Effect Mouse - Atom" href="http://glitter-effect-mouse.blogspot.com/feeds/posts/default" />
<link rel="alternate" type="application/rss+xml" title="Glitter Effect Mouse - RSS" href="http://glitter-effect-mouse.blogspot.com/feeds/posts/default?alt=rss" />
<link rel="service.post" type="application/atom+xml" title="Glitter Effect Mouse - Atom" href="http://www.blogger.com/feeds/8760752062095392674/posts/default" />
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.blogger.com/rsd.g?blogID=8760752062095392674" />
<link rel="stylesheet" type="text/css" href="http://www.blogger.com/static/v1/v-css/50269083-blog_controls.css"/> <link rel="stylesheet" type="text/css" href="http://www.blogger.com/dyn-css/authorization.css?targetBlogID=8760752062095392674&zx=4db21776-926c-43cc-ab1c-da45579ffb77"/>
<script type="text/javascript">

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-580344-68']);
_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

</script>





<script type="text/javascript">
// <![CDATA[
var colour="#ebe96a";
var sparkles=200;

var x=ox=400;
var y=oy=200;
var swide=500;
var shigh=300;
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=rats);
starv=0;
tinyv=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=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==25) star.style.clip="rect(1px, 4px, 4px, 1px)";
if (starv) {
stary+=1+Math.random()*3;
if (stary<shigh+sdown) {
star.style.top=stary+"px";
starx+=(i%5-2)/5;
star.style.left=starx+"px";
}
else {
star.style.visibility="hidden";
starv=0;
return;
}
}
else {
tinyv=50;
tiny.style.top=(tinyy=stary)+"px";
tiny.style.left=(tinyx=starx)+"px";
tiny.style.width="2px";
tiny.style.height="2px";
star.style.visibility="hidden";
tiny.style.visibility="visible"
}
}
function update_tiny(i) {
if (--tinyv==25) {
tiny.style.width="1px";
tiny.style.height="1px";
}
if (tinyv) {
tinyy+=1+Math.random()*3;
if (tinyy<shigh+sdown) {
tiny.style.top=tinyy+"px";
tinyx+=(i%5-2)/5;
tiny.style.left=tinyx+"px";
}
else {
tiny.style.visibility="hidden";
tinyv=0;
return;
}
}
else tiny.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>

<link rel="me" href="http://www.blogger.com/profile/04314322844187808178" />
<link rel="openid.server" href="http://www.blogger.com/openid-server.g" />
<style type="text/css">@import url(http://www.blogger.com/static/v1/v-css/navbar/697174003-classic.css);
div.b-mobile {display:none;}
</style>

</head>

<noembed><body><script type="text/javascript">
function setAttributeOnload(object, attribute, val) {
if(window.addEventListener) {
window.addEventListener("load",
function(){ object[attribute] = val; }, false);
} else {
window.attachEvent('onload', function(){ object[attribute] = val; });
}
}
</script>
[/js]
 

M1tq96

Registered
мисля че -> star[c].style.top=(stary[c]=y)+"px"; трябва да стане

[js]

star[c].style.top=((stary[c]=y) * (-1))+"px";

[/js]

Умножавам валутата по -1 за да обърна знака .. и мисля ,че така ще се получи.. :)
 

superactro

Registered
Мерси за опита ;) Обаче няма промяна.

Опитах в тези двата реда да разменя местата на x и y но резултатите бяха съвсем неочаквани :D
 

Горе