Программирование > JavaScript & JScript

onclick и другое

(1/1)

0b0rm0t:
У меня проблема. Был скрипт, который вызывался онкликом (у боди). Он использовал свойства offsetx/y. И все для того, чтобы при этом самом онклике рядом с мышью появлялся какой-то объект (через стиль - position:absolute; left:...; top:...).

Кликал я просто в разные места текста и все было хорошо. А тут вот выяснилось, что если ткнуть во что-нибудь, что находится в таблице (и, наверное, не только в таблице), то offset будет считаться от ее (хотя онклик по-прежнему у боди), и координаты будут гонимые.

Итак, проблема: как расположить объект рядом  с мышью? (По сути - как найти настоящие координаты мыши)

Путей выхода вижу три:
1. заставить для нужного куска текста offset считать от боди. Тогда все сразу заработает. Но как?

2. Ставить то, что появляется рядом с мышью не в конкретное место на странице, а в конкретное место на экране/в окне. Тогда будет достаточно screenx/clientx. Но как это сделать? Я думал, что для этого и нужно Position:static, но оно просто висит на странице, как и relative (обычный текст).

3. Еще можно как-нибудь найти координаты этой таблицы. Но тоже - как?

Подскажите, очень надо.

И еще: кто-нить знает, чем event.x от event.clientX отличается?

Werwolf13:

function func1()
{
var ActualX = event.clientX;
var ActualY = event.clientY;
// тут с ними уже делаешь, чтоо оебе надо...
}


0b0rm0t:
Не прокатит такое. Изменяем твой пример так:






text1
text2




function f()
{
   alert(event.clientX+" "+event.clientY)
}


Ничего не изменилось? А теперь ткни на строчку текста и посмотри, что выпадет.
Подсказка: координата Y будет отсчитаваться от угла ОКНА, следовательно - непригодна к использованию.

Хотя помощь уже не нужна - в FAQ ответ валялся.

Навигация

[0] Главная страница сообщений

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии