Öhm, kleines problem..... ;)
Florian
- javascript
Ich hab hier ein kleines Script, das so weit so gut auch funktioniert.
Das Problem ist nun, dass auf ein paar Rechnern neben dem Mauszeiger immer ne Sanduhr tickt, und das nervt. Deshalb hab ich den timeout runtergesetzt, so dass die Sanduhr auf den meisten Rechnern nicht mehr auftaucht. Das Prob ist nun, dass das ganze dann tierisch CPU Zeit braucht, und dass mit jedem Durchlauf 300 kb vom RAM geklaut wird, und irgendwann schmiert dann der IE ab...
Die Frage ist nun, wie ich das umgehen kann, also erstens:
-Dass die sanduhr nicht auftaucht
und zweitens:
-dass der IE nich abschmiert nach einer bestimmten zeit
Das Script muss nur unter IE funzen, also auf NS muss keine Rücksicht genommen werden
Hier der Code:
---------------------------------------------------------------------
<html>
<head>
<title></title>
<script language="javascript1.2">
var Ver4=parseInt(navigator.appVersion.charAt(0))>=4
var al, imagesrc, ex=-32, ey=-32, x0=-32, y0=-32
var overlayer = "nein"
// Neue Position des Layers in Abhängigkeit des Bildes berechnen
function JageMaus()
{ /
if (overlayer != "ja1") {
if (overlayer != "ja") {
if (Math.abs(ex-x0)>=10) {
x0+=Math.floor((ex-x0)*0.1)
}
else if (ex!=x0) {
x0+=Math.abs(ex-x0)/(ex-x0)
}
if (Math.abs(ey-y0)>=10) {
y0+=Math.floor((ey-y0)*0.1)
}
else if (ey!=y0) {
y0+=Math.abs(ey-y0)/(ey-y0)
}
}
}
// entsprechende Grafik in Bezug zur Maus-Position waehlen
imagesrc="bild.gif"
// Grafik und Position setzen
if (Ver4)
{
document.all.TrailLayer.document.images.bild.src=imagesrc
}
al.left=x0+10
al.top=y0+10
// hier der Timeout...
setTimeout("JageMaus();",10)
}
function MouseEvent(e)
{ // Position des Maus-Cursors ermitteln
if (Ver4)
{
ex=event.clientX + document.body.scrollLeft
ey=event.clientY + document.body.scrollTop
}
}
function StartScript()
{
// Globale Variablen setzen und Maus-Event initialisieren
if (Ver4) {
if (overlayer != "ja1") {
if (overlayer != "ja") {
al=document.all.TrailLayer.style }
document.onmousemove = MouseEvent
JageMaus()
}
}
}
// Funktion zum setzen der Variablen - ob verfolgt wird oder nicht
function status(stat) {
if (overlayer != "ja1") {
overlayer = stat
}
if (stat == "goon") {
overlayer = "nein"
}
}
// Document Write TrailLayer
function ZeigeJagendenLayer() {
if(Ver4)
{ blubb ='<DIV STYLE="visibility:hidden"></DIV>'
blubb+="<DIV ID=TrailLayer STYLE=position:absolute; top:-32; left:-32; onMouseOut=status('nein') onMouseOver=status('ja')>"
blubb+='<img src="bild.gif" width="34" height="34" alt="" border="0" name="bild">'
blubb+='Text Text Text'
blubb+='</DIV>'
document.writeln(blubb)
}
}
// Init Functions
window.onload = StartScript
ZeigeJagendenLayer()
</script>
</head>
<body bgcolor="#FFFFFF" Link="#000000" Alink="red" Vlink="#000000">
<a href="#" onclick="status('ja1')"><Font Face="Arial" size="-2">Stop</Font></a><br>
<a href="#" onclick="status('goon')"><Font Face="Arial" size="-2">Weiter</Font></a>
</body>
</html>
---------------------------------------------------------------------
Wär nett wenn ihr mir helfen könntet
Flo