Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jquery plugins for truncating long text string by container width/height

As the title says, I want to truncate user-input text string based on the width and height of a designated container. My specification is to truncate the string, display some message like Read More at the end and when user clicks on it, the text slides down.

UPDATE: Ah! Forgot one thing. It should handle multi-byte characters as well.

Can somebody throw some light on what options do I have? jQuery plugins or some nifty jquery snippet?

Thanks and Regards

like image 314
vikmalhotra Avatar asked Oct 14 '22 22:10

vikmalhotra


1 Answers

jQuery Expander Plugin:

HTML:

<div class="expandable">
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
    incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud 
    exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor.
    </p>
    <p>Reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. 
    Excepteur sint occaecat cupidatat non proident, sunt in culpa qui 
    officia deserunt mollit anim id est laborum.
    </p>
    </div>

Javascript:

<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.expander.js" type="text/javascript"></script>

<script type="text/javascript">
$(document).ready(function() {

  // simple example, using all default options
  $('div.expandable p').expander();

  // *** OR ***

  // override some default options
  $('div.expandable p').expander({
    slicePoint:       80,  // default is 100
    expandText:         '[...]', // default is 'read more...'
    collapseTimer:    5000, // re-collapses after 5 seconds; default is 0, so no re-collapsing
    userCollapseText: '[^]'  // default is '[collapse expanded text]'
  });

});
</script>

Source:

http://plugins.learningjquery.com/expander/index.html

See demo here:

http://plugins.learningjquery.com/expander/demo/index.html

Good luck ask me if you need clarifications!

like image 152
Trufa Avatar answered Oct 25 '22 03:10

Trufa