ManyCodes.com codes & scripts Get free programming codes and tutorials!

28Jul/090

How to have two lines following mouse on your website

Here is how you can have two lines following mouse on your website.

Put the code below within your site's source code. If you dont know how to implement this code into your site, please goto how to implement the code to your website

Code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<!-- this script is from www.manycodes.com -->
<!-- START OF Mouse Cursor Crosshairs DHTML -->
 
 
<!-- SUMMARY BRIEF
 
 This DHTML script will make a crosshair to follow
 your mouse cursor around.
 
 You can change the color of the crosshair by changing
 the color hex codes in the <style> tag in the <head>
 of your document.
 
-->
 
 
<!-- Put this portion of the script inside of your <HEAD> tag -->
 
 
<style>
<!--
 
#leftright, #topdown{
 
 position: absolute;
 left: 0;
 top: 0;
 width: 1px;
 height: 1px;
 layer-background-color: #FF0000;
 background-color: #FF0000;
 z-index: 100;
 font-size: 1px;
}
 
-->
</style>
 
 
<!-- Put this code after your <BODY> tag. -->
 
 
<div id="leftright" style="width:expression(document.body.clientWidth-2)"></div>
<div id="topdown" style="height:expression(document.body.clientHeight-2)"></div>
 
<script language="JavaScript1.2">
<!--
 
if (document.all&&!window.print){
leftright.style.width=document.body.clientWidth-2
topdown.style.height=document.body.clientHeight-2
}
else if (document.layers){
document.leftright.clip.width=window.innerWidth
document.leftright.clip.height=1
document.topdown.clip.width=1
document.topdown.clip.height=window.innerHeight
}
 
 
function followmouse1(){
//move cross engine for IE 4+
leftright.style.pixelTop=document.body.scrollTop+event.clientY+1
topdown.style.pixelTop=document.body.scrollTop
if (event.clientX<document.body.clientWidth-2)
topdown.style.pixelLeft=document.body.scrollLeft+event.clientX+1
else
topdown.style.pixelLeft=document.body.clientWidth-2
}
 
function followmouse2(e){
//move cross engine for NS 4+
document.leftright.top=e.y+1
document.topdown.top=pageYOffset
document.topdown.left=e.x+1
}
 
if (document.all)
document.onmousemove=followmouse1
else if (document.layers){
window.captureEvents(Event.MOUSEMOVE)
window.onmousemove=followmouse2
}
 
function regenerate(){
window.location.reload()
}
function regenerate2(){
setTimeout("window.onresize=regenerate",400)
}
if ((document.all&&!window.print)||document.layers)
//if the user is using IE 4 or NS 4, both NOT IE 5+
window.onload=regenerate2
 
//-->
</script>
 
 
<!-- END OF Mouse Cursor Crosshairs DHTML -->
 
<font face="Tahoma"><a target="_blank" href="http://www.manycodes.com/category/java/javascript-codes/"><span style="font-size: 8pt; text-decoration: none">JavaScript Free Code</span></a></font>
22Jul/090

How to make hearts following the mouse pointer trail on your webpage

Here is how you can make hearts following the mouse pointer trail on your webpage. Brighten your webpage by adding this trail to the mouse pointer on your site.

Put the code below within your site's source code. If you dont know how to implement this code into your site, please goto how to implement the code to your website

Code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
<!-- this script is from www.manycodes.com -->
 
<div id="dot0" style="position: absolute; visibility: hidden; height: 11; width: 11;">
 <img src="http://www.javascriptfreecode.com/heart.gif" height=11 width=11>
</div>
<div id="dot1" style="position: absolute; height: 11; width: 11;">
 <img src="http://www.javascriptfreecode.com/heart.gif" height=11 width=11>
</div>
<div id="dot2" style="position: absolute; height: 11; width: 11;">
 <img src="http://www.javascriptfreecode.com/heart.gif" height=11 width=11>
</div>
<div id="dot3" style="position: absolute; height: 11; width: 11;">
 <img src="http://www.javascriptfreecode.com/heart.gif" height=11 width=11>
</div>
<div id="dot4" style="position: absolute; height: 11; width: 11;">
 <img src="http://www.javascriptfreecode.com/heart.gif" height=11 width=11>
</div>
<div id="dot5" style="position: absolute; height: 11; width: 11;">
 <img src="http://www.javascriptfreecode.com/heart.gif" height=11 width=11>
</div>
<div id="dot6" style="position: absolute; height: 11; width: 11;">
 <img src="http://www.javascriptfreecode.com/heart.gif" height=11 width=11>
</div>
 
<script LANGUAGE="JavaScript">
<!-- hide code
 
var nDots = 7;
 
var Xpos = 0;
var Ypos = 0;
 
 // fixed time step, no relation to real time
var DELTAT = .01;
 // size of one spring in pixels
var SEGLEN = 10;
 // spring constant, stiffness of springs
var SPRINGK = 10;
 // all the physics is bogus, just picked stuff to
 // make it look okay
var MASS = 1;
// Positive XGRAVITY pulls right, negative pulls left
// Positive YGRAVITY pulls down, negative up
var XGRAVITY = 0;
var YGRAVITY = 50;
// RESISTANCE determines a slowing force proportional to velocity
var RESISTANCE = 10;
 // stopping criterea to prevent endless jittering
 // doesn't work when sitting on bottom since floor
 // doesn't push back so acceleration always as big
 // as gravity
var STOPVEL = 0.1;
var STOPACC = 0.1;
var DOTSIZE = 11;
 // BOUNCE is percent of velocity retained when
 // bouncing off a wall
var BOUNCE = 0.75;
 
var isNetscape = navigator.appName=="Netscape";
 
 // always on for now, could be played with to
 // let dots fall to botton, get thrown, etc.
var followmouse = true;
 
var dots = new Array();
init();
 
function init()
{
 var i = 0;
 for (i = 0; i < nDots; i++) {
 dots[i] = new dot(i);
 }
 
 if (!isNetscape) {
 // I only know how to read the locations of the
 // <LI> items in IE
 //skip this for now
 // setInitPositions(dots)
 }
 
 // set their positions
 for (i = 0; i < nDots; i++) {
 dots[i].obj.left = dots[i].X;
 dots[i].obj.top = dots[i].Y;
 }
 
 if (isNetscape) {
 // start right away since they are positioned
 // at 0, 0
 startanimate();
 } else {
 // let dots sit there for a few seconds
 // since they're hiding on the real bullets
 setTimeout("startanimate()", 1000);
 }
}
 
function dot(i)
{
 this.X = Xpos;
 this.Y = Ypos;
 this.dx = 0;
 this.dy = 0;
 if (isNetscape) {
 this.obj = eval("document.dot" + i);
 } else {
 this.obj = eval("dot" + i + ".style");
 }
}
 
function startanimate() {
 setInterval("animate()", 20);
}
 
// This is to line up the bullets with actual LI tags on the page
// Had to add -DOTSIZE to X and 2*DOTSIZE to Y for IE 5, not sure why
// Still doesn't work great
function setInitPositions(dots)
{
 // initialize dot positions to be on top
 // of the bullets in the <ul>
 var startloc = document.all.tags("LI");
 var i = 0;
 for (i = 0; i < startloc.length && i < (nDots - 1); i++) {
 dots[i+1].X = startloc[i].offsetLeft
 startloc[i].offsetParent.offsetLeft - DOTSIZE;
 dots[i+1].Y = startloc[i].offsetTop +
 startloc[i].offsetParent.offsetTop + 2*DOTSIZE;
 }
 // put 0th dot above 1st (it is hidden)
 dots[0].X = dots[1].X;
 dots[0].Y = dots[1].Y - SEGLEN;
}
 
// just save mouse position for animate() to use
function MoveHandler(e)
{
 Xpos = e.pageX;
 Ypos = e.pageY;
 return true;
}
 
// just save mouse position for animate() to use
function MoveHandlerIE() {
 Xpos = window.event.x + document.body.scrollLeft;
 Ypos = window.event.y + document.body.scrollTop;
}
 
if (isNetscape) {
 document.captureEvents(Event.MOUSEMOVE);
 document.onMouseMove = MoveHandler;
} else {
 document.onmousemove = MoveHandlerIE;
}
 
function vec(X, Y)
{
 this.X = X;
 this.Y = Y;
}
 
// adds force in X and Y to spring for dot[i] on dot[j]
function springForce(i, j, spring)
{
 var dx = (dots[i].X - dots[j].X);
 var dy = (dots[i].Y - dots[j].Y);
 var len = Math.sqrt(dx*dx + dy*dy);
 if (len > SEGLEN) {
 var springF = SPRINGK * (len - SEGLEN);
 spring.X += (dx / len) * springF;
 spring.Y += (dy / len) * springF;
 }
}
 
function animate() {
 // dots[0] follows the mouse,
 // though no dot is drawn there
 var start = 0;
 if (followmouse) {
 dots[0].X = Xpos;
 dots[0].Y = Ypos;
 start = 1;
 }
 
 for (i = start ; i < nDots; i++ ) {
 
 var spring = new vec(0, 0);
 if (i > 0) {
 springForce(i-1, i, spring);
 }
 if (i < (nDots - 1)) {
 springForce(i+1, i, spring);
 }
 
 // air resisitance/friction
 var resist = new vec(-dots[i].dx * RESISTANCE,
 -dots[i].dy * RESISTANCE);
 
 // compute new accel, including gravity
 var accel = new vec((spring.X + resist.X)/MASS + XGRAVITY,
 (spring.Y + resist.Y)/ MASS + YGRAVITY);
 
 // compute new velocity
 dots[i].dx += (DELTAT * accel.X);
 dots[i].dy += (DELTAT * accel.Y);
 
 // stop dead so it doesn't jitter when nearly still
 if (Math.abs(dots[i].dx) < STOPVEL &&
 Math.abs(dots[i].dy) < STOPVEL &&
 Math.abs(accel.X) < STOPACC &&
 Math.abs(accel.Y) < STOPACC) {
 dots[i].dx = 0;
 dots[i].dy = 0;
 }
 
 // move to new position
 dots[i].X += dots[i].dx;
 dots[i].Y += dots[i].dy;
 
 // get size of window
 var height, width;
 if (isNetscape) {
 height = window.innerHeight + window.pageYOffset;
 width = window.innerWidth + window.pageXOffset;
 } else {
 height = document.body.clientHeight + document.body.scrollTop;
 width = document.body.clientWidth + document.body.scrollLeft;
 }
 
 // bounce off 3 walls (leave ceiling open)
 if (dots[i].Y >=  height - DOTSIZE - 1) {
 if (dots[i].dy > 0) {
 dots[i].dy = BOUNCE * -dots[i].dy;
 }
 dots[i].Y = height - DOTSIZE - 1;
 }
 if (dots[i].X >= width - DOTSIZE) {
 if (dots[i].dx > 0) {
 dots[i].dx = BOUNCE * -dots[i].dx;
 }
 dots[i].X = width - DOTSIZE - 1;
 }
 if (dots[i].X < 0) {
 if (dots[i].dx < 0) {
 dots[i].dx = BOUNCE * -dots[i].dx;
 }
 dots[i].X = 0;
 }
 
 // move img to new position
 dots[i].obj.left = dots[i].X;
 dots[i].obj.top =  dots[i].Y;
 }
}
 
// end code hiding -->
</script>
<font face="Tahoma"><a target="_blank" href="http://www.manycodes.com/"><span style="font-size: 8pt; text-decoration: none">JavaScript Free Code</span></a></font>