Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
Богатый духовно
455 / 262 / 145
Регистрация: 10.03.2015
Сообщений: 1,057
1

Выделение текста в блоке по нажатию

18.06.2016, 21:41. Показов 3686. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте у меня появилась задача по нажатию на блок будь то <a> или <div>
Текст который находится в этом блоке, выделился и его можно было скопировать. Как такое реализовать?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.06.2016, 21:41
Ответы с готовыми решениями:

Выделение текста в блоке и занесение его в input
Есть два блока в них текст, как сделать что бы выделил часть текста в блоке и он оказался в нужном...

Выделение текста в Edit Box по нажатию Ctrl+A
Доброго времени суток. Задача такова. Имеется диалоговое окно с несколькими Edit Box–ами и...

Выделение слов в блоке
Помогите! Надо сделать изменения текста в textarea, т.е. пользователь пишет в textarea текст к...

Выделение объекта по нажатию мыши
Здраствуйте, помогите пожалуйста разобраться как можно вернуть состояние объекта, т.е его начальный...

9
Ренегат
Эксперт HTML/CSS
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
18.06.2016, 22:46 2
точно так же как тут реализованна кнопочка "выделить всё"

Добавлено через 8 минут
вот вам функция
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function select(elem){
    var rng, sel;
    if ( document.createRange ) {//Не все браузеры поддерживают createRange
        rng = document.createRange();//создаем объект область
        rng.selectNode( elem )//выберем текущий узел
        sel = window.getSelection();//Получаем объект текущее выделение
        var strSel = ''+sel; //Преобразуем в строку (ох уж js...)
        if (!strSel.length) { //Если ничего не выделено
            sel.removeAllRanges();//Очистим все выделения (на всякий случай) 
            sel.addRange( rng ); //Выделим текущий узел
        }
    } else {//Если браузер не поддерживает createRange (IE<9, например)
        //Выделяем таким образом, уже без всяких проверок
        var rng = document.body.createTextRange();
        rng.moveToElementText( elem );
        rng.select();
    }
}
0
Богатый духовно
455 / 262 / 145
Регистрация: 10.03.2015
Сообщений: 1,057
18.06.2016, 22:48  [ТС] 3
BANO, очень прикольно, я то писал этот форум да?)
0
Ренегат
Эксперт HTML/CSS
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
18.06.2016, 22:54 4
boilzzz, кстати, скрипт этой кнопки писал не микаэль, а newJS
потом микажль этот код вставил
0
Богатый духовно
455 / 262 / 145
Регистрация: 10.03.2015
Сообщений: 1,057
18.06.2016, 23:07  [ТС] 5
BANO, Ой извини, ответ писал когда не видел кода!

Добавлено через 1 минуту
BANO, а можно как то это более подробно для моего примера?

HTML5
1
<a>Текс для выделения</a>
Чтоб этот текст выделился, а то я в коде выше что-то ни чего не понял...

Добавлено через 38 секунд
Еще бы хорошо с фидлом)
0
Ренегат
Эксперт HTML/CSS
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
18.06.2016, 23:27 6
Лучший ответ Сообщение было отмечено boilzzz как решение

Решение

Цитата Сообщение от boilzzz Посмотреть сообщение
Еще бы хорошо с фидлом)
да держи... ленивец
HTML5
1
2
3
4
<div id="test">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Cum eaque libero, quia tempora, ratione eos ex aperiam, consequatur quam qui nostrum ut quos magni repellat? Vero id perspiciatis incidunt illo!</div>
<div id="test3">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Molestiae numquam, facere. Voluptates delectus voluptatem repudiandae quaerat ex vel quisquam saepe quidem omnis, consequuntur, et obcaecati totam eius quod odit provident?Lorem ipsum dolor sit
    amet, consectetur adipisicing elit. Illo distinctio laborum temporibus cupiditate modi voluptatum, magnam nobis odit unde deserunt ratione rem quod est sed sunt rerum. Beatae reiciendis, praesentium!</div>
<button id="but">Выделить</button>
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function select(elem) {
    var rng, sel;
    if (document.createRange) { //Не все браузеры поддерживают createRange
        rng = document.createRange(); //создаем объект область
        rng.selectNode(elem) //выберем текущий узел
        sel = window.getSelection(); //Получаем объект текущее выделение
        var strSel = '' + sel; //Преобразуем в строку (ох уж js...)
        if (!strSel.length) { //Если ничего не выделено
            sel.removeAllRanges(); //Очистим все выделения (на всякий случай) 
            sel.addRange(rng); //Выделим текущий узел
        }
    } else { //Если браузер не поддерживает createRange (IE<9, например)
        //Выделяем таким образом, уже без всяких проверок
        var rng = document.body.createTextRange();
        rng.moveToElementText(elem);
        rng.select();
    }
}
 
but.onclick = function() {
    select(test3)
}
2
Богатый духовно
455 / 262 / 145
Регистрация: 10.03.2015
Сообщений: 1,057
19.06.2016, 13:42  [ТС] 7
Переделал под свой вопрос)
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function select(elem) {
    var rng, sel;
    if (document.createRange) { //Не все браузеры поддерживают createRange
        rng = document.createRange(); //создаем объект область
        rng.selectNode(elem) //выберем текущий узел
        sel = window.getSelection(); //Получаем объект текущее выделение
        var strSel = '' + sel; //Преобразуем в строку (ох уж js...)
        if (!strSel.length) { //Если ничего не выделено
            sel.removeAllRanges(); //Очистим все выделения (на всякий случай) 
            sel.addRange(rng); //Выделим текущий узел
        }
    } else { //Если браузер не поддерживает createRange (IE<9, например)
        //Выделяем таким образом, уже без всяких проверок
        var rng = document.body.createTextRange();
        rng.moveToElementText(elem);
        rng.select();
    }
}
 
test3.onclick = function() {
    select(test3)
}
HTML5
1
2
3
<div id="test">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Cum eaque libero, quia tempora, ratione eos ex aperiam, consequatur quam qui nostrum ut quos magni repellat? Vero id perspiciatis incidunt illo!</div>
<div id="test3">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Molestiae numquam, facere. Voluptates delectus voluptatem repudiandae quaerat ex vel quisquam saepe quidem omnis, consequuntur, et obcaecati totam eius quod odit provident?Lorem ipsum dolor sit
    amet, consectetur adipisicing elit. Illo distinctio laborum temporibus cupiditade deserunt ratione rem quod est sed sunt rerum. Beatae reiciendis, praesentium!</div>

Не по теме:

Я не ленивец:D просто не допер бы как его подключить. т.к изучаю jquery по большей части. а к js только поверхностно прикоснулся.

0
Ренегат
Эксперт HTML/CSS
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
19.06.2016, 13:52 8
Цитата Сообщение от boilzzz Посмотреть сообщение
т.к изучаю jquery по большей части. а к js только поверхностно прикоснулся.
как можно изучать библиотеку не изучив языка, для которого она написана и на котором она написана?
0
Богатый духовно
455 / 262 / 145
Регистрация: 10.03.2015
Сообщений: 1,057
19.06.2016, 13:55  [ТС] 9
BANO, люблю делать все через жDD
0
BANO
19.06.2016, 14:03     Выделение текста в блоке по нажатию
  #10

Не по теме:

boilzzz, это я уже заметил)

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.06.2016, 14:03

Смена текста по нажатию кнопки и возврат текста по времени
Здравствуйте, есть такая проблема с Unity, что если через Sleep делать, то останавливается вся...

Добавление текста в блоке
Подскажите или скиньте ссылку где почитать. Есть jsp страница. На ней функции java и информационные...

Смещение текста в блоке
Здравствуйте,не подскажите с чем может быть связано смещение текста в блоке ? &lt;div...

Выравнивание текста в блоке
Привет всем. подскажите как выровнять текст так как на картинке? (Зелёные буквы =) ) . То есть на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru