Положение курсора в строке обычного HTML текста (НЕ input и textarea)
Есть конструкция вида: <div>Некоторый текст</div>
Нужно получить положение курсора в этой строке (номер символа, рядом с которым щёлкнули мышкой) любым способом... |
Вероятно, вам сюда.
|
Можно говнокодом: если текст в диве небольшой, обернуть каждый символ в спан.
|
Trikadin
Я курил этот мануал, но там обязательно нужен выделенный текст, а у нас курсор нулевой длины. Но за русский вариант статьи спасибо - в закладки) FINoM Не настолько любым способом)) |
а если contenteditable? закинул атрибут в тег, взял курсор, удалил атрибут.
может получится. а где такая нужда вылезла?, просто интересно. |
Person
Пробовал такой вариант - не возвращает положение курсора (или, может я чего-то не знаю/не нашёл) Делаю, только не смеяться, очередной wisiwyg. НО! С одинаковыми тегами на выходе во всех барузерах - ничего подобного не нашёл, а очень нужно. Положение курсора - единственная принципиально не решённая проблема. |
И зачем вам это в визивиге?
|
Trikadin
Не очень понял вопрос поэтому отвечаю на всё что понял. Wisiwyg рассчитан на уровень секретарши, а обрабатывать то, что она введёт - мне (нужно отслеживать абзацы - с этим у wisiwyg'ов (браузеров) самая большая проблема). Браузер неизвестен - сейчас немерено доморощенных, если учитывать планшеты и т.п. И под каждый затачивать PHP-оптимизацию - не вариант. Да и возможность добавления кнопки на любой тег без геммороя, тоже совсем не лишняя + полное соответствие тому, что видим и тому что будет после сохранения. |
есть метод document.elementFromPoint(x, y);, с помощью него можно получить элемент находящийся под курсором, а там уже как удобней
|
Monolithed
Мне б такую карму) Боюсь, элемент и символ в строке - разные вещи. При получении элемента получим подобный эффект: http://javascript.ru/forum/events/17...navedenii.html (запустить нижний пример) А при пляске от него - та же самая проблема. |
Часовой пояс GMT +3, время: 00:12. |