Je tire un flux JSON et je veux juste afficher un maximum de 10 caractères de la chaîne, puis faire un ... après. Comment est-ce que je fais cela avec JQuery?Définir la limite de caractères à afficher dans un paragraphe
Répondre
vous n'avez pas besoin jquery, JS peut faire:
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
Je n'ai pas vérifié cela pour une erreur, donc vous devrez peut-être ajuster pour une mauvaise indexation.
var txt = SomeStringFromFeed;
if(txt.length > 10)
{
txt = txt.substr(0,10) + "...";
}
return txt;
Vous pouvez utiliser les CSS pour mettre en place des points de suspension:
.myparagraph {
white-space: nowrap;
width: 10em;
overflow: hidden;
text-overflow: ellipsis;
}
Ensuite, il n'y a pas besoin d'une jQuery ou autre codage.
Références:
(notez que le premier lien - Quirksmode.org est une excellente ressource généralement pour CSS et d'autres choses Javascript)
Utilisation cool de CSS. Je ne savais pas à propos de débordement de texte, je vais devoir en apprendre plus à ce sujet. –
ellipsis CSS est cool, mais il ne supporte qu'une seule ligne de textes – JoenasE
Je ne crois pas que la solution CSS mentionnée par @spudley soit cross browser (pas de support firefox). En supposant que vous vous souciez de cela bien sûr. Le premier lien qu'il fournit indique même le support limité dans le coin supérieur droit de la page. Maintenant, après avoir dit que j'ai une petite fonction qui peut être exagérée pour ce dont vous avez besoin, mais j'ai trouvé que je l'utilise régulièrement dans des situations similaires. Le code ci-dessous a été commenté, mais cela ne fait qu'insérer une ellipse après le dernier mot complet basé sur la limite définie.
Vous pouvez revenir « Le chien saute ... » au lieu de « Le chien saute 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('');
}
Vous avez raison, bien sûr, il n'est pas pris en charge par Firefox * encore * (bientôt j'espère?). Mais tous les autres navigateurs le supportent (même IE aussi loin que IE5.5), donc il a une bonne couverture, et même Firefox le tronque correctement. De plus, il y a des astuces pour le faire fonctionner dans Firefox en utilisant XUL ... mais c'est une toute autre question et réponse. – Spudley
@Spudley c'est une bonne solution. Personnellement, j'ai hâte de savoir quand cela fonctionnera navigateur croisé. Je voulais juste m'assurer qu'il/elle (et toute autre personne qui pourrait trébucher sur cette question pour des réponses) était conscient que si leurs besoins nécessitent une solution de navigateur croisé, cela pourrait ne pas fonctionner comme ils l'espéraient. –
cool. Je vais essayer d'utiliser ça – JoenasE
- 1. Afficher uniquement un paragraphe de texte
- 2. richTextBox limite de caractères?
- 3. Afficher la première ligne d'un paragraphe
- 4. Limite Nombre de caractères dans C# Chaîne
- 5. Limite de caractères en HTML
- 6. Dans l'éditeur de texte Eclipse, comment reformater/remplir/justifier un paragraphe à 80 caractères de large?
- 7. Comment définir la date à afficher dans un calendrier SharePoint?
- 8. css pour remplacer les caractères dans l'étiquette de paragraphe
- 9. Limite de caractères de la requête PHP/MySQL?
- 10. Comment cacher un paragraphe dans un FlowDocument?
- 11. mssql_fetch_object limite de caractères de texte?
- 12. Problème de limite de caractères MySQL
- 13. Comment afficher le marqueur de paragraphe dans Visual Studio 2008?
- 14. Comment surmonter la limite de 8000 caractères d'OpenXML?
- 15. Limite de caractères pour la recherche mysql_query (select)
- 16. scinde une chaîne avec la limite de caractères maximum
- 17. WPF ComboBox limite à la liste
- 18. Comment afficher une image dans la limite d'une cellule
- 19. Ecrire à un paragraphe en utilisant jQuery
- 20. Dans MySQL définir quelque chose de similaire à une limite basée sur un pourcentage
- 21. Wordpress comment définir la longueur post extrait 100 caractères et 200 caractères
- 22. CEdit contrôle la longueur maximale? (en caractères qu'il peut afficher)
- 23. Comment définir l'accès à la limite de débit à votre API à l'aide d'Iptables?
- 24. Comment définir un tableau de caractères vide dans matlab?
- 25. Ajouter la case à cocher au paragraphe
- 26. Comment afficher les caractères de plusieurs langues dans un contrôle
- 27. Caractère de paragraphe dans l'URL?
- 28. Limite apparaissant à droite du signe de limite dans LaTeX
- 29. Comment afficher le nombre de caractères dans YUI lors de la modification d'une cellule?
- 30. lignes ne cassant pas dans un paragraphe
Vous modifier votre question d'inclure une partie du code que vous avez déjà écrit pour obtenir plus réponses +1 pour le nouvel utilisateur qui a voté pour aucune raison indiquée. –