zoukankan      html  css  js  c++  java
  • js 截取固定长度字符串但不打断单词

    适用地方:英文网站中,比如面包屑导航处新闻标题过长、用css截取文本简介时将单词打断
     
    // 使用方法
    // 1.复制下面函数
    // 2.调用
    // 3.填参数  sliceString(targetDom,length,addString)
    //    targetDom  对应要处理字符串的标签(格式为css选择器)(!标签里不能套标签!)
    //    length        需要截取的长度(格式为number类型) 
    //    addString  截取完成后加上的字符串(选填,默认为空,格式为string类型)
    //    例如      sliceString('#list li a',100,' (╯‵□′)╯︵┻━┻');
    //        或者  sliceString('#list li a',100);
     
     
    function sliceString(targetDom,length,addString){
            var targetStr,// 目标字符串
                _this,// 保存当前this
                addStr = addString ? addString : '',// 截取后添加的字符串
                sliceLength = length;// 截取字符串长度
            jQuery(targetDom).each(function(){
                _this = jQuery(this);
                targetStr = _this.text();
                if(targetStr.length <= sliceLength){
                    return true;
                }
                for(;sliceLength > 0;sliceLength--){
                    if(targetStr.charAt(sliceLength) == ' '){
                        targetStr = targetStr.slice(0,sliceLength) + addStr;
                        sliceLength = length;
                        break;
                    }
                }
                _this.text(targetStr);
            });
        }
        sliceString('#list li a',100,' (╯‵□′)╯︵┻━┻');
     
     
    备注:这个功能其实应该交由后端实现的  (╯‵□′)╯︵┻━┻ , 前端萌新怼不过后端就自己考虑实现吧 = =
     
  • 相关阅读:
    基于腾讯开源的msec来进行php开发模块
    《每周一点canvas动画》——圆周运动
    Socket.io+Notification实现浏览器消息推送
    10行 JavaScript 实现文本编辑器
    zzuli2228: 神奇的排名
    HDU2044:一只小蜜蜂...
    zzuli2226:神奇的薯条
    HDU2028:Lowest Common Multiple Plus
    HDU2036:改革春风吹满地
    HDU2029:Palindromes _easy version
  • 原文地址:https://www.cnblogs.com/yangjunfei/p/8213546.html
Copyright © 2011-2022 走看看