2016-04-29 4 views
0

Как я могу получить зажатый текст с узла в javascript? Смотрите ниже код:Получить зажим (с эллипсисом) textContent from textNode

console.log(document.getElementById("text1").textContent); 
 
// prints "This is a long text" 
 

 

 
console.log(document.getElementById("text2").textContent); 
 
// prints "This is a long text as well" 
 
// expected "This is a long text a..."
.longtext { 
 
    width: 140px; 
 
    overflow: hidden; 
 
    white-space: nowrap; 
 
    text-overflow: ellipsis; 
 
}
<div id="text1">This is a long text</div> 
 
<div class="longtext" id="text2">This is a long text as well</div>

Я хочу, чтобы получить ожидаемый "This is a long text a..." от элемента с идентификатором text2.

ответ

1

Я нашел подобный вопрос: How can I access the actual text that is displayed in a DIV when using CSS style overflow: hidden?

Короче:

Там нет простого способа сделать это. Вы должны подсчитать, сколько текста может быть видны в DIV в зависимости от размера сНа, размера шрифта, типа шрифта и смещения текста внутри DIV

Как сделать многоточие с помощью JS http://www.ruzee.com/blog/2007/08/ellipsis-or-truncate-with-dots-via-javascript

0

Рана фрагмента кода, он отлично работает, как вы ожидали. «text-overflow: эллипсис» работает так, как ожидалось. Вот ссылка JSFiddle для рабочего кода https://jsfiddle.net/qx5mL548/

Не понял, в чем проблема, которую вы получаете. Вы можете попробовать этот код n сообщите мне, если он будет работать:

<html> 
<head>Ellipsis</head> 
<style> 
     .longtext { 
      width: 140px; 
      overflow: hidden; 
      white-space: nowrap; 
      text-overflow: ellipsis; 
     } 
    </style> 
    <body> 
     <div id="text1">This is a long text</div> 
     <div class="longtext" id="text2">This is a long text as well</div> 
    </body> 
</html> 
Смежные вопросы