Mauscursor als AJAX-Load-Indicator
Alexa
- javascript
Halli hallo,
ich hätte da mal ne Frage: und zwar spiele ich grad ein wenig mit AJAX rum. Und da gibts doch diese schicken "Activity-Indicators" - also im Wesentlichen animierte GIFs, die man per CSS zur richtigen Zeit sichtbar bzw. unsichtbar schaltet. Genauso mache ich es zur Zeit, ein GIF in nem (un-)sichbaren DIV. Jetzt hab ich mich aber grad gefragt, ob ich sowas nicht an den Mauszeiger hängen könnte. Ich mein ich hab sowas schon mal gesehen - weiß aber nimmer wo! Wie man per CSS den Mauscursor zum "Hourglass" macht, weiß ich, ich hätte da aber gern ein wenig mehr. Etwa einen für AJAX typischen "Activity-Indicator", der sich mit dem Mauszeiger bewegt.
Geht sowas oder noch besser, gibts sowas oder ähnliches irgendwo???
Liebe Grüße,
Alexa
Hallo Alexa.
Wie man per CSS den Mauscursor zum "Hourglass" macht, weiß ich, ich hätte da aber gern ein wenig mehr. Etwa einen für AJAX typischen "Activity-Indicator", der sich mit dem Mauszeiger bewegt.
Geht sowas oder noch besser, gibts sowas oder ähnliches irgendwo???
Nein, es ist leider nicht ohne weiteres möglich.
Einen schönen Montag noch.
Gruß, Mathias
Dass ich auch nie was im Archiv finde, schlimm!!! Dankeschön! Hast du vielleicht auch noch nen Tipp für ein gutes FollowMouse-Skript?
Gruß,
Alexa
Hallo Alexa.
Hast du vielleicht auch noch nen Tipp für ein gutes FollowMouse-Skript?
Ich nicht, aber Cheatah nebenan.
Einen schönen Montag noch.
Gruß, Mathias
Lieber Mathias,
heute bin ich freizügig...
/**
* Mausverfolger
*--------------------
*
* Dieses Script erzeugt dynamisch ein DIV-Element, welches dem Mauszeiger
* in einem festgelegten Abstand folgt. Sein HTML-Inhalt kann frei gefüllt werden.
* Damit lässt es sich als Tooltip, als Infobox oder sonstwie verwenden.
*
* erstellt von Felix Riesterer (Felix.Riesterer@gmx.net)
*/
Mausverfolger = {
// CSS-ID für das DIV-Element
cssID : "mausverfolger",
// Abweichungen des Verfolgers von der exakten Mausposition
dx : 0,
dy : 0,
div : false, // enthält nach der Initialisierung eine Referenz auf das DIV-Element
init : function () {
Mausverfolger.div = document.createElement("div");
Mausverfolger.div.id = Mausverfolger.cssID;
document.body.insertBefore(Mausverfolger.div, document.body.firstChild);
Mausverfolger.div.style.position = "absolute";
Mausverfolger.div.style.zIndex = "1000";
Mausverfolger.aus(); // vorsorglich ausschalten
document.onmousemove = Mausverfolger.verfolgeKoordinaten;
},
verfolgeKoordinaten : function (ereignis) {
var pos, IE;
if (!ereignis) ereignis = window.event;
pos = { left : ereignis.clientX, top : ereignis.clientY };
IE = (window.document.compatMode && window.document.compatMode == "CSS1Compat") ?
window.document.documentElement : window.document.body || null;
if (IE) {
pos.left += IE.scrollLeft;
pos.top += IE.scrollTop;
}
Mausverfolger.div.style.left = pos.left + Mausverfolger.dx + "px";
Mausverfolger.div.style.top = pos.top + Mausverfolger.dy + "px";
},
// Verfolger sichtbar schalten
an : function () {
Mausverfolger.div.style.display = "block";
return false;
},
// Verfolger unsichtbar schalten
aus : function () {
Mausverfolger.div.style.display = "none";
return false;
}
};
Mausverfolger.oldWinOnLoad = window.onload;
window.onload = function () {
if (typeof(Mausverfolger.oldWinOnLoad) == "function")
Mausverfolger.oldWinOnLoad();
Mausverfolger.init();
};
Liebe Grüße aus Ellwangen,
Felix Riesterer.
Hallo Felix.
heute bin ich freizügig...
Einen guten Tag gehabt?
Einen schönen Montag noch.
Gruß, Mathias
Hi Felix,
habs grad erst gesehen und werds morgen früh gleich ausprobieren. Vielen herzlichen Dank. Ist schon klasse, was manche Leute hier an Engagement bringen! Weiter so!!!
LG, Alexa
So, hab jetzt doch noch ne Frage: irgendwie funzt das Ding nicht, wenn ich animated GIFs mit 16x16px anzeigen will. Da sieht man nichts. Bei 32x32px passt dagegen alles. Woran könnte das denn liegen???