DIV дисплея в позиции курсора в текстовой области [дубликат]

Этот вопрос уже имеет ответ здесь:

Для моего проекта я хотел бы обеспечить автоматическое завершение для определенной текстовой области. Подобный тому, как intellisense/omnicomplete работает. Для этого однако я должен узнать абсолютную позицию курсора так, чтобы я знал, где DIV должен появиться.

Складывается: это (почти я надеюсь), невозможный достигнуть. У кого-либо есть некоторые отличные идеи, как решить ту проблему?

58
задан Armin Ronacher 24 September 2008 в 16:55
поделиться

1 ответ

Я разместил тему, связанную с этой проблемой, на русском сайте, посвященном JavaScript.

Если вы не понимаете русский язык, попробуйте перевести версию Google: http://translate.google.ru/translate?js=y&prev=_t&hl=ru&ie=UTF-8&layout=1&eotf=1&u=http:/ /javascript.ru/forum/events/7771-poluchit-koordinaty-kursora-v-tekstovom-pole-v-pikselyakh.html&sl=ru&tl=en

Есть некоторые проблемы с разметкой в ​​примерах кода в переведенной версии, поэтому вы можете читаем код в оригинальном русском посте .

Идея проста. Не существует простого, универсального и кросс-браузерного метода для определения положения курсора в пикселях. Честно говоря, есть, но только для Internet Explorer.

В других браузерах, если вам действительно нужно его вычислить, вам нужно ...

  • создать невидимый DIV
  • , скопировать все стили и содержимое текстового поля в этот DIV
  • , затем вставить элемент HTML в точно такая же позиция в тексте, где курсор находится в текстовом поле
  • , получить координаты этого HTML-элемента
4
ответ дан 24 November 2019 в 19:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: