Выделение текста при клике на элемент
Добрый вечер! Нашел в интернете скрипт для выделения текста, находящегося в 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". Скажите, пожалуйста, в чем может быть проблема? Спасибо:) |
Alex351960,
строка 2 добавьте индекс 0 ... find('.manage_text')[0]; |
| Часовой пояс GMT +3, время: 01:10. |