Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Положение курсора в строке обычного HTML текста (НЕ input и textarea) (https://javascript.ru/forum/misc/18172-polozhenie-kursora-v-stroke-obychnogo-html-teksta-ne-input-i-textarea.html)

Murmurianez 20.06.2011 19:44

Положение курсора в строке обычного HTML текста (НЕ input и textarea)
 
Есть конструкция вида: <div>Некоторый текст</div>

Нужно получить положение курсора в этой строке (номер символа, рядом с которым щёлкнули мышкой) любым способом...

trikadin 20.06.2011 19:59

Вероятно, вам сюда.

FINoM 20.06.2011 20:05

Можно говнокодом: если текст в диве небольшой, обернуть каждый символ в спан.

Murmurianez 20.06.2011 20:19

Trikadin
Я курил этот мануал, но там обязательно нужен выделенный текст, а у нас курсор нулевой длины. Но за русский вариант статьи спасибо - в закладки)

FINoM
Не настолько любым способом))

person 21.06.2011 06:50

а если contenteditable? закинул атрибут в тег, взял курсор, удалил атрибут.
может получится.

а где такая нужда вылезла?, просто интересно.

Murmurianez 21.06.2011 15:34

Person
Пробовал такой вариант - не возвращает положение курсора (или, может я чего-то не знаю/не нашёл)

Делаю, только не смеяться, очередной wisiwyg.

НО! С одинаковыми тегами на выходе во всех барузерах - ничего подобного не нашёл, а очень нужно.
Положение курсора - единственная принципиально не решённая проблема.

trikadin 21.06.2011 16:08

И зачем вам это в визивиге?

Murmurianez 21.06.2011 16:52

Trikadin
Не очень понял вопрос поэтому отвечаю на всё что понял.

Wisiwyg рассчитан на уровень секретарши, а обрабатывать то, что она введёт - мне (нужно отслеживать абзацы - с этим у wisiwyg'ов (браузеров) самая большая проблема).

Браузер неизвестен - сейчас немерено доморощенных, если учитывать планшеты и т.п. И под каждый затачивать PHP-оптимизацию - не вариант.

Да и возможность добавления кнопки на любой тег без геммороя, тоже совсем не лишняя + полное соответствие тому, что видим и тому что будет после сохранения.

monolithed 21.06.2011 18:13

есть метод document.elementFromPoint(x, y);, с помощью него можно получить элемент находящийся под курсором, а там уже как удобней

Murmurianez 21.06.2011 19:29

Monolithed
Мне б такую карму)
Боюсь, элемент и символ в строке - разные вещи.
При получении элемента получим подобный эффект:
http://javascript.ru/forum/events/17...navedenii.html (запустить нижний пример)
А при пляске от него - та же самая проблема.


Часовой пояс GMT +3, время: 14:14.