CSS(js)限制页面显示的文本字符长度
人气:0复制代码 代码如下:
<nav class="cf_nav clearfix">
<ul>
<li>
<a href="http://lizhuangs.18021051d350c3871c0a.tpl.diandian.com" title="首页">
<div class="nav_block">
<span>首页</span>
<span class="hover">首页</span>
</div>
</a>
</li>
<li>
<a href="http://lizhuangs.18021051d350c3871c0a.tpl.diandian.com/submit" title="投稿">
<div class="nav_block">
<span>投稿</span>
<span class="hover">投稿</span>
</div>
</a>
</li>
<li>
<a href="http://lizhuangs.diandian.com/inbox " title="私信 ">
<div class="nav_block">
<span>私信 </span>
<span class="hover">私信 </span>
</div>
</a>
</li>
<li>
<a href="http://lizhuangs.18021051d350c3871c0a.tpl.diandian.com/archive" title="存档">
<div class="nav_block">
<span>存档</span>
<span class="hover">存档</span>
</div>
</a>
</li>
<li>
<a href="http://lizhuangs.18021051d350c3871c0a.tpl.diandian.com/rss" title="订阅">
<div class="nav_block">
<span>订阅</span>
<span class="hover">订阅</span>
</div>
</a>
</li>
如果我在限制上面的span中的字符。
$("nav_block span").wordLimit(8);
它使用了下面的一个算定义jquery插件的方法,这是我从点点网扣下来的:
复制代码 代码如下:
// copyright c by zhangxinxu v1.0 2009-09-05
// http://www.zhangxinxu.com
/* $(".test1").wordLimit(); 自动获取css宽度进行处理,如果css中未对.test1给定宽度,则不起作用
$(".test2").wordLimit(24); 截取字符数,值为大于0的整数,这里表示class为test2的标签内字符数最多24个
*/
(function($){
$.fn.wordLimit = function(num){
this.each(function(){
if(!num){
var copyThis = $(this.cloneNode(true)).hide().css({
'position': 'absolute',
'width': 'auto',
'overflow': 'visible'
});
$(this).after(copyThis);
if(copyThis.width()>$(this).width()){
$(this).text($(this).text().substring(0,$(this).text().length-4));
$(this).html($(this).html()+'...');
copyThis.remove();
$(this).wordLimit();
}else{
copyThis.remove(); //清除复制
return;
}
}else{
var maxwidth=num;
if($(this).text().length>maxwidth){
$(this).text($(this).text().substring(0,maxwidth));
$(this).html($(this).html()+'...');
}
}
});
}
})(jQuery);
加载全部内容