Couper une chaîne après n caractères, mais si c'est au milieu d'un mot couper le mot entier

Je suis en train de faire une fonction JS qui coupe une chaîne après n caractères - qui fonctionne. Le problème est que si elle est au milieu d'un mot, il est de mauvaise qualité, j'ai donc besoin de votre aide pour faire couper le mot en entier si c'est le milieu de.

Mon code pour l'instant:

if($('#desc').text().length > 505){
  str = $("#desc").text();
  $('#desc').text(str.substring(0, 505)).append('...');
}

P. S

  • #desc est la div qui contient ma chaîne.
  • vous pouvez utiliser jQuery.

source d'informationauteur Dan Barzilay | 2012-05-25