Wyciągam z kanału JSON i chcę wyświetlić maksymalnie 10 znaków ciągu, a następnie zrobić ... później. Jak to zrobić z JQuery?Ustaw limit znaków do wyświetlania w akapicie
Odpowiedz
nie trzeba jQuery, JS może to zrobić:
string.substr(start,length) start The index where to start the extraction. First character is at index 0 length The number of characters to extract. If omitted, it extracts the rest of the string
Nie zaznaczyłem tego dla jednego błędu, więc być może będziesz musiał poprawić słabe indeksowanie.
var txt = SomeStringFromFeed;
if(txt.length > 10)
{
txt = txt.substr(0,10) + "...";
}
return txt;
Można użyć CSS skonfigurować wielokropek:
.myparagraph {
white-space: nowrap;
width: 10em;
overflow: hidden;
text-overflow: ellipsis;
}
to nie ma potrzeby jakiegokolwiek jQuery lub inne kodowanie.
Referencje:
(zauważ, że pierwszy link - Quirksmode.org jest doskonałym źródłem ogólnie dla CSS i JavaScript rzeczy)
Fajne użycie CSS. Nie wiedziałem o przepełnieniu tekstu, będę musiał dowiedzieć się więcej na ten temat. –
CSS ellipsis jest fajny, ale obsługuje tylko jedną linię tekstu. – JoenasE
Nie wierzę, że wspomniane przez @spudley rozwiązanie CSS to przeglądarka (brak obsługi firefox). Zakładając, że troszczysz się o to oczywiście. Pierwszy podany przez niego link podaje nawet ograniczone wsparcie w prawym górnym rogu strony.
Teraz, po powiedziawszy, że mam fajną małą funkcję, która może być przesadą dla tego, czego potrzebujesz, ale odkryłem, że używam tego regularnie w podobnych sytuacjach. Poniższy kod został skomentowany, ale tylko wstawia wielokropek po ostatnim pełnym słowie na podstawie ustawionego limitu.
więc można wrócić „Pies skacze ...” zamiast „Pies skacze ove ...”
// ==============================================================================================
// Truncate a string to the given length, breaking at word boundaries and adding an elipsis
// @param str - String to be truncated
// @param limit - integer Max length of the string
// @returns a string
// ==============================================================================================
function truncate(str, limit) {
var chars;
var i;
// check if what was passed as a string is actually a string
if (typeof(str) != 'string') {
return '';
}
// create an array of the chars in the string
chars = str.split('');
// if the length is greater than the set limit, process for truncating
if (chars.length > limit) {
// while the char count is greater than the limit,
for (i = chars.length - 1; i > -1; --i) {
// if char count is still greater, redefine the array size to the value of i
if (i > limit) {
chars.length = i;
}
// if char count is less than the limit keep going until you hit a space
// and redefine the array size to the value of i
else if (' ' === chars[i]) {
chars.length = i;
break;
}
}
// add elipsis to the end of the array
chars.push('...');
}
// return the array as a string
return chars.join('');
}
Masz rację, oczywiście, nie jest to obsługiwane przez Firefox * jeszcze * (wkrótce mam nadzieję?). Ale wszystkie inne przeglądarki obsługują go (nawet IE aż do IE5.5), więc ma dobry zasięg, a nawet Firefox go obcina poprawnie. Plus są hacky work-arounds, aby działało w Firefoksie przy użyciu XUL ... ale to jest całe inne pytanie i odpowiedź. – Spudley
@Spudley to dobre rozwiązanie. Osobiście czekam, kiedy to będzie działać w przeglądarce krzyżowej. Chciałem tylko upewnić się, że on (i każdy, kto mógłby natknąć się na to pytanie w odpowiedzi na pytania), był świadomy, że jeśli ich potrzeby wymagają rozwiązania opartego na przeglądarce, może nie działać tak jak im się spodziewano. –
fajne. Spróbuję tego użyć – JoenasE
- 1. Ustaw limit czasu w Alamofire
- 2. Ustaw limit czasu jednorożca
- 3. Knockout: limit liczby znaków w obserwowalnym polu
- 4. Magento: Ustaw LIMIT na kolekcji
- 5. Ustaw limit pamięci do debugowania w Visual Studio
- 6. Angularjs - ustaw wartość widoku nie aktualizuje wyświetlania
- 7. Limit znaków zmiennej łańcuchowej javascript
- 8. Ustaw limit bazy danych MongoDB (ROZMIAR)
- 9. Ustaw limit czasu połączenia dla zapytań składniowych
- 10. Ustaw limit minimalnej wartości jQuery UI suwak
- 11. Ustaw limit czasu dla ajax (jQuery)
- 12. Ustaw limit czasu testu za pomocą PHPUnit
- 13. Skrypty do wyświetlania wszystkich różnych znaków w pliku tekstowym
- 14. Standardowe rozwiązanie do wyświetlania nazw znaków w języku C++?
- 15. ustaw limit czasu dla wprowadzenia użytkownika
- 16. Ustaw limit czasu na URL.openStream() Android
- 17. Ustaw limit czasu na pliku simplexml_load_file
- 18. Ustaw limit czasu bazy danych w Entity Framework
- 19. Java: Ustaw limit czasu dla wątków w wątku
- 20. jQuery zaznacz tekst i dodaj do niego span w akapicie
- 21. Przekroczono maksymalny limit liczby znaków (16384)
- 22. Limit wiersza tematu wiadomości zatwierdzania git do 50 znaków
- 23. Limit czasu sesji w ASP.NET
- 24. Limit znaków na nazwach użytkowników na Instagramie
- 25. Oblicz szerokość wyświetlania ciągu znaków w języku Java
- 26. Python argparse: Jak wstawić znak nowej linii pomocy w akapicie?
- 27. sposób wyświetlania ciągu znaków w zależności od szerokości układu
- 28. Ustaw domyślną wartość zachęty dla ciągu znaków
- 29. Ustaw właściwość Objective-C według ciągu znaków
- 30. Spring Boot Java Config Ustaw limit czasu sesji
edytować swoje pytanie do obejmują niektóre kodu zostały już napisane, aby uzyskać więcej odpowiedzi. +1 dla nowego użytkownika, który przegłosował głosowanie bez żadnego powodu. –