Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Выделение текста при клике на элемент (https://javascript.ru/forum/events/52670-vydelenie-teksta-pri-klike-na-ehlement.html)

Alex351960 29.12.2014 23:48

Выделение текста при клике на элемент
 
Добрый вечер! Нашел в интернете скрипт для выделения текста, находящегося в html-теге.
Вот так выглядит мой html-код
<div class="manage_postbl">

<span class="manage_postbl_id">#1111</span>

<span class="manage_date">24 декабря 2014 01:05</span>

<p class="manage_text">По своей сути<br/> рыбатекст является альтернативой традиционному lorem ipsum
</p>

<p class="manage_blupr">
   <span class="manage_btnotkl">Отклонить</span>
</p>

</div>

А это js, который должен при клике на ".manage_btnotkl" выделять текст, расположенный в абзаце с классом ".manage_text":
$('.manage_btnotkl').click(function() {
    var e = $(this).parent().parent().find('.manage_text');
    if(window.getSelection){ 
      var s= window.getSelection(); 
      if(s.setBaseAndExtent){ 
          s.setBaseAndExtent(e,0,e,e.innerText.length-1); 
      }else{ 
      var r=document.createRange(); 
      r.selectNodeContents(e); 
      s.removeAllRanges(); 
      s.addRange(r);
      } 
    }else if(document.getSelection){ 
      var s=document.getSelection(); 
      var r=document.createRange(); 
      r.selectNodeContents(e); 
      s.removeAllRanges(); 
      s.addRange(r); 
    }else if(document.selection){ 
      var r=document.body.createTextRange(); 
      r.moveToElementText(e); 
      r.select();
    }
});


В гугл хроме выводит ошибку "Uncaught TypeError: Cannot read property 'length' of undefined". Скажите, пожалуйста, в чем может быть проблема?
Спасибо:)

рони 30.12.2014 00:37

Alex351960,
строка 2 добавьте индекс 0 ... find('.manage_text')[0];


Часовой пояс GMT +3, время: 11:06.