Как выделить текст на странице?
нужно сделать выделение текста в див/спан и т.п. контейнере.
Устроит даже по онклику для конкретного контейнера, если произвольно нельзя. В сети решения нет. Посему, если кто подскажет кроссбраузерное решение, с меня приз. |
Цитата:
|
Цитата:
Хотя к сожалению, полного решения нет, т.к. у меня задача еще и выделить часть. Но может как-то вывернусь уже сам. И что интересно, искал примерно неделю. А тут - бац, и все есть и еще и работает. Пасибо. |
Приз в студию.
|
Цитата:
Где-то в районе $5 вполне могу. Токо надо решение и для частичного выделения текста. Еще за $5 мне нужно: • копипаст в contentEditable контейнер без разрывов (в опере глючит, добавляя nbsp при копипасте) • переход на нужный рядок в контейнере • нумерация рядков Еще за $5: • разметка синтаксиса • отлов пиксельных координат курсора (для вывода подстановки кода) • поиск/замена в контейнере Еще за $5: • редактирование в contentEditable контейнере в режиме столбцов (без понятия, возможно ли такое) |
Цитата:
Цитата:
|
Цитата:
Сделать выделение, как вы выделяете, обведя мышкой, чтобы потом правой кнопкой копировать/удалять етц. да, токо чтобы код был доступен для редактирования |
Событие onselect поддерживают <input> и <textarea>.
|
наводишь курсор мыши на текст, жмешь ЛКМ и не отпуская ее, выделяешь что нужно :D
|
Цитата:
|
Вам же всё уже скинули. Если вы хотите сделать визивиг, то либо делайте его сами, либо раскошеливайтесь побольше, чем на 5 долларов.
|
Цитата:
Цитата:
|
Цитата:
Цитата:
|
Цитата:
до этого "если произвольно нельзя" понимаете, надо еще и часть. Вот если еще и часть, то с меня однозначно приз :) Цитата:
|
Цитата:
|
Цитата:
прим. перев.: часть текста. ;) |
elf2002, ну так там же есть всё!
<html> <head> <script> function selectSomeText(){ var range= document.createRange(); var elem= document.getElementById("span"); var sel = window.getSelection(); range.setStart(elem.firstChild, 1); range.setEnd(elem.firstChild, 5); sel.removeAllRanges(); sel.addRange(range); }; </script> </head> <body> <span id="span">atexta</span><br /> <button onclick="selectSomeText()">select some text</button> </body> </html> С оговоркой, правда, что это для новых браузеров. |
Хе-хе, я такой-же пример сделал:
<!DOCTYPE HTML> <html> <body>Наведи на меня. <script> var range = document.createRange(), select = window.getSelection(), node = document.body.firstChild; range.setStart(node, 7); range.setEnd(node, 9); document.body.onmouseover=function(){ select.addRange(range) } document.body.onmouseout=function(){ select.removeRange(range) } </script> </body> </html> А в дебри ie никто лезть не хочет.)) |
Цитата:
Кстати, всё забываю выяснить - в девятке есть нормальная поддержка Range? |
Спасибо, пацаны, попробуем.
Авось что-то и получится. |
Цитата:
хотя может и ошибаюсь... дай те пример для теста, ща попробую открыть в виртуалке |
Ха... работают оба ваши примера в ИЕ9...
|
Часовой пояс GMT +3, время: 07:07. |