'pageX' ist Null oder kein Objekt bei IE8
Michael
- javascript
Hallo zusammen,
ich wollte mir einen mehrzeiligen Tooltip für AreaShapes bauen. Nach einer Recherche scheint mir Javascript die einzige Lösung zu sein.
Ich verwende zur Zeit ein einfaches <div> das ich ein und ausblende.
Allerdings möchte ich den Tooltip jetzt neben der Maus positionieren.
Dazu verwende ich folgendes Script:
document.onmousemove = updateWMTT;
function updateWMTT(e) {
if (wmtt != null && wmtt.style.display == 'block') {
x = (e.pageX ? e.pageX : window.event.x) + wmtt.offsetParent.scrollLeft - wmtt.offsetParent.offsetLeft;
y = (e.pageY ? e.pageY : window.event.y) + wmtt.offsetParent.scrollTop - wmtt.offsetParent.offsetTop;
wmtt.style.left = (x + 20) + "px";
wmtt.style.top = (y + 20) + "px";
}
}
Mehr lesen: http://webmatze.de/wirklich-einfache-javascript-tooltips/#ixzz0r149CK2e
Under Creative Commons License: Attribution Share Alike
Beim IE8 bekomme ich allerdings nun den Fehler:
'pageX' ist Null oder kein Objekt
auch andere Varianten die man im Internet findet wie:
x = e.pageX || window.event.x;
führen zu diesem Fehler!
Ist das neu bei IE8? Ich vermute ja dass die Scripte vorher mit IE <= 7 funktioniert haben. Habt ihr eine Idee wie ich das Problem lösen kann?
Vielen Dank im voraus!
Hi there,
Ist das neu bei IE8? Ich vermute ja dass die Scripte vorher mit IE <= 7 funktioniert haben. Habt ihr eine Idee wie ich das Problem lösen kann?
nur mal auf die schnelle geraten, das Umgehen mit dem Event-Objekt hängt beim IE auch davon ab, ob er sich im Quirksmodus befindet oder nicht, ändere einfach einmal Deinen Doctype und schau, ob sich dann etwas ändert...
Hi Klawischnigg
nur mal auf die schnelle geraten, das Umgehen mit dem Event-Objekt hängt beim IE auch davon ab, ob er sich im Quirksmodus befindet oder nicht, ändere einfach einmal Deinen Doctype und schau, ob sich dann etwas ändert...
ich habe es mal im Quirks und im Standards Mode probiert, aber geht bei mir in beiden Modi nicht.
Bei mir geht auch das Beispiel auf der Seite
http://webmatze.de/wirklich-einfache-javascript-tooltips/
nicht, bzw. nur unter FF und anderen Browsern. Wenn ich dort unten über "Unser Link" fahre wird der Tooltip bei FF neben der Maus und bei IE über dem Link, also an der unveränderten Stelle angezeigt.
Geht das bei euch?
Hallo Michael,
Bei mir geht auch das Beispiel auf der Seite
http://webmatze.de/wirklich-einfache-javascript-tooltips/
nicht, bzw. nur unter FF und anderen Browsern. Wenn ich dort unten über "Unser Link" fahre wird der Tooltip bei FF neben der Maus und bei IE über dem Link, also an der unveränderten Stelle angezeigt.Geht das bei euch?
die Seite liefert im IE folgende Fehler (einfach mal auf das gelbe Warnschild rechts unten klicken)
Details zum Fehler auf der Webseite
Benutzer-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.2)
Zeitstempel: Wed, 16 Jun 2010 13:18:42 UTC
Meldung: 'google.search.CustomSearchControl' ist Null oder kein Objekt
Zeile: 165
Zeichen: 5
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/?fbc_channel=1
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/?fbc_channel=1
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/?fbc_channel=1
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/?fbc_channel=1
Meldung: Unbekannter Fehler.
Zeile: 153
Zeichen: 62
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/?fbc_channel=1
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Meldung: 'pageX' ist Null oder kein Objekt
Zeile: 210
Zeichen: 3
Code: 0
URI: http://webmatze.de/wirklich-einfache-javascript-tooltips/
Ich denke, die üben noch.
Gruß, Jürgen
Hallo Michael,
> function updateWMTT(e) {
> if (wmtt != null && wmtt.style.display == 'block') {
> x = (e.pageX ? e.pageX : window.event.x) + wmtt.offsetParent.scrollLeft - wmtt.offsetParent.offsetLeft;
> y = (e.pageY ? e.pageY : window.event.y) + wmtt.offsetParent.scrollTop - wmtt.offsetParent.offsetTop;
> wmtt.style.left = (x + 20) + "px";
> wmtt.style.top = (y + 20) + "px";
> }
> }
»
du fragst e.pageX ab, obwohl e nicht existiert. Ich mache das z.B. so:
handler = function(e) {
e = e || window.event;
startposy = e.pageY ? e.pageY : e.clientY + window.document.documentElement.scrollTop;
...
}
So kömmen FF und Co. den Parameter e benutzen, während die IE auf window.event zugreifen.
Gruß, Jürgen
Hallo Michael,
function updateWMTT(e) {
if (wmtt != null && wmtt.style.display == 'block') {
x = (e.pageX ? e.pageX : window.event.x) + wmtt.offsetParent.scrollLeft - wmtt.offsetParent.offsetLeft;
y = (e.pageY ? e.pageY : window.event.y) + wmtt.offsetParent.scrollTop - wmtt.offsetParent.offsetTop;
wmtt.style.left = (x + 20) + "px";
wmtt.style.top = (y + 20) + "px";
}
}
> »
>
> du fragst e.pageX ab, obwohl e nicht existiert. Ich mache das z.B. so:
>
> ~~~javascript
handler = function(e) {
> e = e || window.event;
> startposy = e.pageY ? e.pageY : e.clientY + window.document.documentElement.scrollTop;
> ...
> }
So kömmen FF und Co. den Parameter e benutzen, während die IE auf window.event zugreifen.
Gruß, Jürgen
Hi Jürgen,
also mit ~~~javascript e = e || window.event;
Dachte das pageX null ist und nicht e! Wieder was dazu gelernt!
Vielen Dank!
Beim IE8 bekomme ich allerdings nun den Fehler:
'pageX' ist Null oder kein Objekt
Laut Microsoft kennt das Event-Objekt kein pageX, nur clientX, offsetX und screenX, und auch SELFHTML ist dieser Meinung.
Wenn du dir um solche Altlasten des Browserkriegs keine Gedanken machen möchtest, schau dir Javascript-Bibliotheken an, beispielsweise JQuery – 19k, die dir viel Ärger abnehmen können.