[JS] Prośba o znalezienie błędu

0

Witam,

napisałem następujące funkcje:

function XY(e) {
	x = event.clientX + document.body.scrollLeft;
	y = event.clientY + document.body.scrollTop;
}
function ShowMessage(text,id) {
	top_pos = y -80 + 'px';
	left_pos = x +50 + 'px';
	popup = document.getElementById(id);
	popup.style.visibility = 'visible';
	popup.style.top = top_pos;
	popup.style.left = left_pos;
	popup.innerHTML = '';
	popup.innerHTML = text;
}

Pod IE i Operą wszystko działa prawidłowo, tj. zmienne x i y przyjmują odpowiednie wartości (funkcja XY), a nastepnie wykorzystywane są one do wyświetlenia DIVa w określonym miejscu (funkcja ShowMessage). Niestety Firefox wymięka i nie przypisuje nic zmiennym x oraz y, w rezultacie czego nie może sparsować wartości dla własności "top" i "left" i opuszcza deklaracje.
Gdzie tkwi problem? Bardzo proszę o pomoc.

0

moze skorzystaj z position = fixed dla FF? w Operze chyba tez dziala///

0

W akcie desperacji próbowałem już tego, ale potem odkryłem, że błąd tkwi gdzieś w JS.
Tak jak pisałem: ta funkcja XY przypisuje zmiennym x i y puste wartości, ale tylko pod FF.

0
<html>
<head>
<script>
var x, y;
function XY(e) {
  if (! e) e = event;
  x = e.clientX + document.body.scrollLeft;
  y = e.clientY + document.body.scrollTop;
}
document.onmousemove = XY;
document.onclick = function() {
  document.body.innerHTML = x + ', ' + y;
}
</script>
</head>
<body></body>
</html>
0

[green] [green] [green] < czy to wystarczajaco wymowne? :> Dzieki wielkie!!

Edit.
Ino fragment:

document.onclick = function() {
  document.body.innerHTML = x + ', ' + y;
}

niepotrzebny.

1 użytkowników online, w tym zalogowanych: 0, gości: 1