Cutter.js
Cutter.js is a library used for truncating HTML code to limit its length, by word number, without losing the markup.
Description
Cutter solves the problem when its needed to cut some content by a number of words but its mandatory no lose any markup. Cutter cuts the content to the number of requested words and if needed puts a link to open the full content again.
Some benefits:
- No markup is lost.
- Framework agnostic.
- The content can be written without take care about the full content.
- Not needed to have two different contents.
- Crossbrowsing
- Tested on:
- IE >= 6
- Firefox >= 3
- Safari >= 4
- Google Chrome >= 4
- Opera >= 9.5
- Tested on:
- Only 1.5kb when Gzipped.
(Links will only work if you clone the repo.)
Examples to see for yourself!
Usage
Before using it:
Insert in your code:
<script type="text/javascript" src="/path/to/your/js/libs/Cutter.js"></script>
Simple execution:
Cutter.run(oApplyTo, oTarget, nWords, [configuration]);
####Mandatory
oAplyTo: The element that will have its text truncated
oTarget: The element where the truncated content will be placed.
nWords: Maximum word count. Any additional word will be truncated.
####Optional
configuration: This object contains both the text that will be displayed in the "view more" link and its style.
configuration.viewMoreText: The text that will be displayed in the "view more" link. The default is "View more"
configuration.class: The class that will be applied to the "View more" link. The default is "more"
Tip: oTarget Could be the same oApplyTo element if we want to replace the full content with the cut content
Example
cutElement = document.getElementById("test"); Cutter.run(cutElement, cutElement, 30, {viewMoreText:"Expand", class:"expandLink"});
*On the example above, the element with id "test" will display a maximum of 30 words and a link entitled "Expand". The "expandLink" class will be applied to this link. The remaining words that were previously truncated will show up in the element when the link is clicked.
License
Cutter.js is licensed under the MIT license.