我想实现 readmore/less 功能。即我将拥有 html 内容,我将显示该内容的前几个字符,并且在它前面会有一个阅读更多链接。我目前正在使用此代码:
var txtToHide= input.substring(length);
var textToShow= input.substring(0, length);
var html = textToShow+ '<span class="readmore"> … </span>'
+ ('<span class="readmore">' + txtToHide+ '</span>');
html = html + '<a id="read-more" title="More" href="#">More</a>';
上面的input是输入的字符串,length是初始显示的字符串的长度。
这段代码有问题,假设我想从这个字符串中去掉 20 个字符:
"Hello <a href='#'>test</a> output"
, html 标签介于两者之间,如果部分剥离它会弄乱页面。我在这里想要的是,如果 html 标签落在范围内,它应该覆盖整个标签,即我需要这里的输出是 "Hello <a href='#'>test</a>"
.我该怎么做
最佳答案
与其手动做太多,我更喜欢你使用以下 jQuery 插件。
http://plugins.learningjquery.com/expander/index.html#getting-started
它会展开和折叠您的文本以获得更多选项,还为您提供很多定制。
希望这会有所帮助。
谢谢!
侯赛因
关于c# - 在 JavaScript/jQuery 中显示更多/更少而不剥离 Html 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4613277/