Выделите текст так же, как «Ctrl + A» при нажатии на текст? - PullRequest
5 голосов
/ 25 октября 2010

Я хочу выделить текст в абзаце, когда щелкаю или дважды щелкаю тег <p>. Не выделять, как с помощью мыши, чтобы сделать выделенную область, чтобы выбрать текст для выделения!

У меня есть несколько адресов ссылок на файлы с абзацами и * .rar на странице, и я хочу выделить весь текст, когда щелкну один из них. Я думаю, что текстовое поле могло бы работать таким образом, но мне нравится, чтобы оно было в абзаце или теге ссылки.

Есть ли способ выделить весь текст в абзаце, щелкнув другой элемент?

Ответы [ 3 ]

7 голосов
/ 25 октября 2010

Вот функция, которая выберет содержимое элемента, который вы передаете ему:

function selectElementContents(el) {
    var range;
    if (window.getSelection && document.createRange) {
        range = document.createRange();
        var sel = window.getSelection();
        range.selectNodeContents(el);
        sel.removeAllRanges();
        sel.addRange(range);
    } else if (document.body && document.body.createTextRange) {
        range = document.body.createTextRange();
        range.moveToElementText(el);
        range.select();
    }
}

window.onload = function() {
    var el = document.getElementById("your_para_id");
    selectElementContents(el);
};
2 голосов
/ 25 октября 2010

Если вы говорите о JavaScript, посмотрите на Введение в диапазон Питера-Поля Коха (известного своими таблицами совместимости).

0 голосов
/ 25 октября 2010

Вы можете выбрать целый абзац двойным щелчком мыши. Почему вы хотите это изменить?

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