Create site free
Кроссбраузерная getSelection - 4 Августа 2010 - Посты - UnderShot: getselection, getselection in ie, кроссбраузерная функция

Кроссбраузерная getSelection

Предлагаю вашему вниманию кроссбраузерную функцию getSelection().

Она удобна тем, что везде может искать выделенный текст.

Внимание, код:

Code
<script>
function getSel(i) {
  var d=document,a=d.getElementById(i),w=window,b;
  if (a&&a.value) { // если передаем элемент, и у него есть value
  b = a.value.substring(a.selectionStart, a.selectionEnd);
  }
  else {
  if (w.getSelection) { // если есть window.getSelection
  b = w.getSelection();
  }
  else if (d.getSelection) { // для Firefox
  b = d.getSelection();
  }
  else if (d.selection) { // для IE
  b = d.selection.createRange().text;
  }
  else { // если ничего не найдено
  b = null;
  }
  }
  return b;
}
</script>

Вызывать:

Code
getSel("myId");

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

Также, сокращенный код:

Code
<script>
function getSel(i){var d=document,a=d.getElementById(i),w=window;return (a&&a.value)?a.value.substring(a.selectionStart,a.selectionEnd):w.getSelection?w.getSelection():d.getSelection?d.getSelection():d.selection?d.selection.createRange().text:false}
</script>
На, посмотри
Рассказать в
Подписаться по RSS
Дата: 04.08.2010 • Теги:

getselection, getselection in ie, кроссбраузерная функция

+3
Материалы этой категории:
    Не найдено.
Просмотров: 2551, комментариев: 2
#1: sitdirek
Можно ли получить selectionStart, selectionEnd для случаев когда нет свойства value
14.03.2011, 02:05
или нет?
#2: Dil
А как его встроить в IE 9 ???
19.07.2011, 14:22
или нет?
Комментируешь?

Ctrl+↵