Mauszeiger-Spielereien abschalten
Alex
- javascript
ich würde gerne auf meiner hp solche mauszeigerverfolger einfügen(kennt ihr sicher) allerdings den genervten besuchern auch eine möglichkeit bieten, die per link abzuschalten, also etwa so:
<a href="ja das wüsste ich selber gern">
Wenn Sie keine Mausverfolger wollen, bitte hier klicken
</a>
kann von mir aus auch ein button sein, egal
gibts da eine möglichkeit?
Hi,
ich würde gerne auf meiner hp solche mauszeigerverfolger einfügen(kennt ihr sicher) allerdings den genervten besuchern auch eine möglichkeit bieten, die per link abzuschalten, also etwa so:
<a href="ja das wüsste ich selber gern">
Wenn Sie keine Mausverfolger wollen, bitte hier klicken
</a>
Also ich drück bei solchen Seiten eher Ctrl-W
cu,
Andreas
Hallo.
gibts da eine möglichkeit?
Du könntest z.B. eine Checkbox definieren und sobald die Funktion, die den Mausverfolger aufruft gestartet wird wird erst mal abgefragt, ob im Kästchen ein Haken ist. Ist es selektiert, wird fortgefahren. Nicht, wird der Rest nicht mehr ausgeführt.
Du könntest aber auch einfach eine Variable notieren (var x = "0";) und bei einem Klick auf den Link diese Variable auf 1 setzten (x = "1";) dann fragst du einfach beim Funktionsaufruf ab, welchen Wert x hat und wenn der Wert nicht "0" ist, passiert auch nichts.
Ich hoffe ich konnte helfen, H2O
"Du könntest aber auch einfach eine Variable notieren (var x = "0";) und bei einem Klick auf den Link diese Variable auf 1 setzten (x = "1";) dann fragst du einfach beim Funktionsaufruf ab, welchen Wert x hat und wenn der Wert nicht "0" ist, passiert auch nichts."
das hilft mir schon eher, aber was muss ich bei <a> als "href" angeben?
Hallo.
das hilft mir schon eher, aber was muss ich bei <a> als "href" angeben?
<a href="#" onClick="x='1';return false;">Link</a>
Oder aber du machst dazu eine Funktion:
<a href="#" onClick="einser();return false;">Link</a>
function einser() {
x = "1";
}
Obwohl die Funktion etwas umständlich ist.
Aber wenn du mal dein Mausverfolger-Script postest wäre es auch leichter für mich, dir zu helfen, weil ich es dann direkt anpassen könnte.
Ich hoffe ich konnte helfen, H2O
Hallo.
das hilft mir schon eher, aber was muss ich bei <a> als "href" angeben?
<a href="#" onClick="x='1';return false;">Link</a>
Oder aber du machst dazu eine Funktion:
<a href="#" onClick="einser();return false;">Link</a>
function einser() {
x = "1";
}Obwohl die Funktion etwas umständlich ist.
Aber wenn du mal dein Mausverfolger-Script postest wäre es auch leichter für mich, dir zu helfen, weil ich es dann direkt anpassen könnte.
Ich hoffe ich konnte helfen, H2O
OK, hier ist das script:
Image0 = new Image();
Image0.src = "http://members.tripod.de/firewalker_Javas/bubblack.gif";
Amount = 20;
Ymouse = -50;
Xmouse = -50;
Ypos = new Array();
Xpos = new Array();
Speed = new Array();
rate = new Array();
grow = new Array();
Step = new Array();
Cstep = new Array();
nsSize = new Array();
ns = (document.layers)?1:0;
(document.layers)?window.captureEvents(Event.MOUSEMOVE):0;
function Mouse(evnt) {
Ymouse=(document.layers)?evnt.pageY-20:event.y-20;
Xmouse=(document.layers)?evnt.pageX:event.x;
}
(document.layers)?window.onMouseMove=Mouse:document.onmousemove=Mouse;
for (i = 0; i < Amount; i++) {
Ypos[i] = Ymouse;
Xpos[i] = Xmouse;
Speed[i] = Math.random()*4+1;
Cstep[i] = 0;
Step[i] = Math.random()*0.1+0.05;
grow[i] = 8;
nsSize[i] = Math.random()*15+5;
rate[i] = Math.random()*0.5+0.1;
}
if (ns) {
for (i = 0; i < Amount; i++) {
document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0><img src="+Image0.src+" name='N' width="+nsSize[i]+" height="+nsSize[i]+"></LAYER>");
}
}
else {
document.write('<div style="position:absolute;top:0px;left:0px"><div style="position:relative">');
for (i = 0; i < Amount; i++) {
document.write('<img id="si" src="'+Image0.src+'" style="position:absolute;top:0px;left:0px;filter:alpha(opacity=90)">');
}
document.write('</div></div>');
}
function MouseBubbles() {
var hscrll = (document.layers)?window.pageYOffset:document.body.scrollTop;
var wscrll = (document.layers)?window.pageXOffset:document.body.scrollLeft;
for (i = 0; i < Amount; i++){
sy = Speed[i] * Math.sin(270 * Math.PI / 180);
sx = Speed[i] * Math.cos(Cstep[i] * 4);
Ypos[i] += sy;
Xpos[i] += sx;
if (Ypos[i] < -40) {
Ypos[i] = Ymouse;
Xpos[i] = Xmouse;
Speed[i] = Math.random() * 6 + 4;
grow[i] = 8;
nsSize[i] = Math.random() * 15 + 5;
}
if (ns) {
document.layers['sn'+i].left = Xpos[i] + wscrll;
document.layers['sn'+i].top = Ypos[i] + hscrll;
}
else {
si[i].style.pixelLeft = Xpos[i] + wscrll;
si[i].style.pixelTop = Ypos[i] + hscrll;
si[i].style.width = grow[i];
si[i].style.height = grow[i];
}
grow[i] += rate[i];
Cstep[i] += Step[i];
if (grow[i] > 24) grow[i] = 25;
}
setTimeout('MouseBubbles()', 10);
}
MouseBubbles();
Hallo.
So, es hat zwar etwas gedauert, aber ich denke jetzt sind wir fertig *g*
OK, hier ist das script:
[...]
Also da hast du dir aber einen Brocken ausgesucht...
Aber ich habe ja gesagt, ich helfe, also hier ist das neue Script:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
<script type="text/javascript">
<!--
var x = "0";
Image0 = new Image();
Image0.src = "http://members.tripod.de/firewalker_Javas/bubblack.gif";
Amount = 20;
Ymouse = -50;
Xmouse = -50;
Ypos = new Array();
Xpos = new Array();
Speed = new Array();
rate = new Array();
grow = new Array();
Step = new Array();
Cstep = new Array();
nsSize = new Array();
ns = (document.layers)?1:0;
(document.layers)?window.captureEvents(Event.MOUSEMOVE):0;
function Mouse(evnt) {
Ymouse=(document.layers)?evnt.pageY-20:event.y-20;
Xmouse=(document.layers)?evnt.pageX:event.x;
}
(document.layers)?window.onMouseMove=Mouse:document.onmousemove=Mouse;
for (i = 0; i < Amount; i++) {
Ypos[i] = Ymouse;
Xpos[i] = Xmouse;
Speed[i] = Math.random()*4+1;
Cstep[i] = 0;
Step[i] = Math.random()*0.1+0.05;
grow[i] = 8;
nsSize[i] = Math.random()*15+5;
rate[i] = Math.random()*0.5+0.1;
}
if (ns) {
for (i = 0; i < Amount; i++) {
document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0><img src="+Image0.src+" name='N' width="+nsSize[i]+" height="+nsSize[i]+"></LAYER>");
}
}
else {
document.write('<div style="position:absolute;top:0px;left:0px"><div style="position:relative">');
for (i = 0; i < Amount; i++) {
document.write('<img id="si" src="'+Image0.src+'" style="position:absolute;top:0px;left:0px;filter:alpha(opacity=90)">');
}
document.write('</div></div>');
}
function MouseBubbles() {
var hscrll = (document.layers)?window.pageYOffset:document.body.scrollTop;
var wscrll = (document.layers)?window.pageXOffset:document.body.scrollLeft;
for (i = 0; i < Amount; i++){
sy = Speed[i] * Math.sin(270 * Math.PI / 180);
sx = Speed[i] * Math.cos(Cstep[i] * 4);
Ypos[i] += sy;
Xpos[i] += sx;
if (x == "0") {
if (Ypos[i] < -40) {
Ypos[i] = Ymouse;
Xpos[i] = Xmouse;
Speed[i] = Math.random() * 6 + 4;
grow[i] = 8;
nsSize[i] = Math.random() * 15 + 5;
}
}
if (ns) {
document.layers['sn'+i].left = Xpos[i] + wscrll;
document.layers['sn'+i].top = Ypos[i] + hscrll;
}
else {
si[i].style.pixelLeft = Xpos[i] + wscrll;
si[i].style.pixelTop = Ypos[i] + hscrll;
si[i].style.width = grow[i];
si[i].style.height = grow[i];
}
grow[i] += rate[i];
Cstep[i] += Step[i];
if (grow[i] > 24) grow[i] = 25;
}
setTimeout('MouseBubbles()', 10);
}
MouseBubbles();
function stop() {
if (x == "0") {
x = "1";
document.getElementById("stopper").innerHTML="Weiter";
}
else if (x == "1") {
x = "0";
document.getElementById("stopper").innerHTML="Stop";
}
}
//-->
</script>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Und damit die Funktion auch eintritt musst du im body noch so einen Link setzen:
<a href="#" onClick="stop();return false" id="stopper">Stop</a>
Und, klappt es?
Hat's geholfen?
Ich hoffe ich konnte helfen, H2O
Hallo,
jddi
Bert
(Just Don't Do it)