JavaScript: функция «getSelection()» получает выделенный текст, существует ли возможность, получить выделенный текст вместе с его HTML-тегами?
На самом деле нет, window.getSelection() возвращает не текст, а объект Selection. И если вы с ним пытаетесь работать как с текстом, то автоматически сработает его метод toString() и вы получите "только текст Hello World".
Если посмотрите документацию, то там есть и Selection.anchorNode // Returns the Node in which the selection begins.
и также Selection.focusNode // Returns the Node in which the selection ends.
Все так сложно потому, что выделение может начинаться в середине одного тега, и заканчиваться в середине другого, как-то так:
как-то такwindow.getSelection().anchorNode.parentNode