Hallo Leute,
beschäftige mich erst seit kurzem mit dem Thema Homepage und mit dem verschönern derselben. In diesem Zusammenhang habe ich schon etliche Seiten besucht und so bin ich auch auf diese, meiner Meinung nach sehr gut gemachte Seite, gekommen.
Nun zu meiner Frage.
Auf einigen Seiten, auch auf einer Seite von planet-gif.com, und zwar bei den animierten Giffs, und hier den Smilies, gibt es einen Effekt, dass sich an den Mauszeiger etwas dranhängt und diesem nicht mehr von der Seite weicht. Dies möchte ich irgendwie, wenn ich meine Seite mal fertig habe, auch verwenden.
Wer kann mir hier einen Tip oder Hinweis geben, wie man das macht oder was man dafür braucht oder wer so etwa anbietet. Bin trotz intensiver Suche bisher nicht weitergekommen.
Würde mich über eine Antwort sehr freuen. Gruß
animated balls oder fliegende Bälle, Smilies oder anderes
-
-
- Offizieller Beitrag
Das was Du meinst ist ein JavaScript.Das Grundprogramm ist immer gleich, bei dem Effekt mit dem Gummiband.
Füge das Script in den Body Bereich der Webseite ein.
Bei den ersten Zeilen werden die Grafiken bestimmt, wobei Du darauf achten mußt, dass die größenangaben im Script mit den tatsächlichen größe der Grafiken übereinstimmt.
Viel Spaß damit.
Hier habe ich es auch noch laufen.
http://www.planet-smilies.de
Hier das Script:Code
Alles anzeigen<div id="dot0" style="position: absolute; visibility: hidden; height: 15; width: 15;">[img]bullet.gif[/img]</div> <div id="dot1" style="position: absolute; height: 15; width: 15;">[img]grafik_1.gif[/img]</div> <div id="dot2" style="position: absolute; height: 15; width: 15;">[img]grafik_2.gif[/img]</div> <div id="dot3" style="position: absolute; height: 15; width: 15;">[img]grafik_3.gif[/img]</div> <div id="dot4" style="position: absolute; height: 15; width: 15;">[img]grafik_4.gif[/img]</div> <div id="dot5" style="position: absolute; height: 15; width: 15;">[img]grafik_5.gif[/img]</div> <div id="dot6" style="position: absolute; height: 15; width: 15;">[img]grafik_6.gif[/img]</div> <script LANGUAGE="JavaScript"> <!--// Author: James DeZego. [email]JJD228@AOL.COM[/email] 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; var GRAVITY = 50; 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 = 15; // 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()", 3000); } } 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, (spring.Y + resist.Y)/ MASS + GRAVITY); // 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 + document.scrollTop; width = window.innerWidth + document.scrollLeft; } else { height = document.body.clientHeight + document.body.scrollTop; width = document.body.clientWidth + document.body.scrollLeft; } // bounce of 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; } } //--> </script>
-
Hallo Admin,
habe das Script gleich gestern abend mal in den Body einer leeren Homepageseite eingefügt und, da mir die passenden Smilies fehlten, mich bei den von http://www.planet-smilies.de angebotenen bedient.
Es funktioniert!!!!.
Klasse.
Danke für die schnelle Hilfe, werde das Forum weiterempfehlen. -
- Offizieller Beitrag
Noch ein kleiner Tip.
Verlinke die Smilies nicht von der Seite, sondern lege sie auf Dein eigenen Webspace.
Sonst kann es passieren, das die Smilies bei einer Umstellung der Seite nicht mehr angezeigt werden können. -
Hallo admin,
das Problem habe ich erkannt und werde natürlich die gifs auf meinen eigenen Webspace hochladen. Müsste ja eigentlich jedem verständlich sein, dass man das so und nicht anders macht.
Gruß
Mandeck -
hallo admin, ich hbae s genau wie du es gesagt hast den html-code
kopiert und eingefügt aber auf meiner hp fuktioniert es nich, da kommen nur so weiße kästen mit einem rotem x ! -
- Offizieller Beitrag
Der Grund, warum nur Rote Kreuze kommen ist der, das Du noch die Grafiken (Smilies) Dir zusammen suchen mußt.
Einfach an der Stelle grafik_1.gif Deine Smilies Deiner Wahl ersetzten und nicht vergessen, die Grafiken auf Deinen Server mit hochzuladen.
Dann geht es -
dankeschön admin, ich bin ja richtig doof das ich das nicht gemacht habe also nochmals danke
-
- Offizieller Beitrag
kein Problem und schau mal wieder vorbei
-
hallo nochmal ich ( ich weiß ich bin lässtig ) ich wollt nur mal [/b]genau die url von dem smile eingibt
-
- Offizieller Beitrag
Am besten speicherst Du die Grafiken ab und lädst die Grafiken mit hoch.
Im obigen Beispiel findest Du am Anfang des Scripts 6 mal die Zeile
grafik_1
grafik_2 uswJetzt ersetzt Du die Bezeichnung grafik_1 durch zb Smilie_2.
Passe noch die Stelle
an die Größe der Smiles an.
Wenn ein Smiles die Abmessungen 16x14 hat, dann trage dahinter
ein, sodaß sie im richtigen Verhältnis dargestell werden -
ich weiß gar nicht, was darin immer so toll sein soll. mich nervt es meistens nur, dass da bei jeder mausbewegung was nachkommt
-
Ich finde die Mausverfolger auch oft störend. Vor allem die, wo eine Uhr dauernd mit herumkreist.....
-
- Offizieller Beitrag
Es gibt schon läßtige Mausverfolger
-
Mausverfolger sind eine Spielerei. Wie alle Spielereien (blinkende Icons oder Texte z.B. auch) sind sie amüsant, wenn sie (sehr) sparsam eingesetzt werden. Da können sie evtl. sogar einen sinnvollen Zweck erfüllen und die Aufmerksamkeit auf etwas bestimmtes lenken.
Der Admin hat auf seiner Baumeister-Seite einen Mausverfolger in Fadenkreuz-Form als Demo eingesetzt. Ich könnte mir vorstellen, daß der zur Überprüfung einer sauberen Fluchtlinie bzw. in einer sehr großen Tabelle sinnvoll eingesetzt werden könnte. -
- Offizieller Beitrag
He, das mit dem Fadenkreuz und der Tabelle ist eine gute Idee
Darauf wäre ich selbst nie gekommen -
Kommt vermutlich daher, daß ich regelmäßig mit (Papier-) Listen und Tabellen arbeite. Auf meinem Schreibtisch gibt es zwei Lineale - die trotzdem manchmal zu wenig sind.