我有一个将列出新闻文章的页面。为了减少页面的长度,我只想显示一个预告片(文章的前200个字/ 600个字母),然后显示一个“更多...”链接,点击后,将展开其余部分文章以jQuery/Javascript的方式。现在,我已经想通了,甚至在一些粘贴页面上找到了下面的帮助方法,它可以确保新闻文章(字符串)不会在一个词的中间被切碎:rails:获取文章的传情/摘录
def shorten (string, count = 30)
if string.length >= count
shortened = string[0, count]
splitted = shortened.split(/\s/)
words = splitted.length
splitted[0, words-1].join(" ") + ' ...'
else
string
end
end
我遇到的问题是我从数据库中获得的新闻文章正文是格式化的HTML。所以如果我不走运,上面的帮助者会在html标签的中间切断我的文章字符串,并在那里插入“more ...”字符串(例如在“”之间),这会在页面上损坏我的html 。
有没有办法解决这个问题,或者有一个插件可以用来从HTML字符串中生成摘录/抽搐吗?
哦,我喜欢你的,它修复了文本周围标签的问题 – LDomagala 2009-02-11 14:01:58