zoukankan      html  css  js  c++  java
  • 用jquery 实现 超出字符 截断并加上省略号(自定义jquery函数)

    <script type="text/javascript">
    jQuery.fn.limit=function(){
           var self = $("[@limit]");
           self.each(function(){
                 var objString = $(this).text();
                 var objLength = $(this).text().length;
                 var num = $(this).attr("limit");
                 if(objLength > num){
                        $(this).attr("title",objString);
                        objString = $(this).text(objString.substring(0,num) + "...");
                }
             })
    }
    $(function(){
           $("[@limit]").limit();
    })
    </script>

    <body>
     <div class="blank">请按F5刷新页面。。。。</div>
    <div id="best">
     <div limit="12">计算字串的长度长度长度长度</div>
     <div limit="10">这边有优化很公开这边</div>
     <div limit="12">这边有优化很公开长度长度很公开长度</div>
     <div limit="12">计算字长度长度</div>
     <div limit="10">这边有优化很边有优化很边有优化很边有优化很边有

    优化很</div>
    </div>
    </body>

    ps:自定义函数的写法

    1、扩展jQuery自身之全局函数

    jQuery.logError={/*log error*/}

    jQuery.logWarning ={/*log warning */}

    jQuery.logDebug ={/*log debug */}

    使用:jQuery.logError();

    上面三个可以写成

    jQuery.log= {

        Error:function(){/*log error*/},

        Warning: function(){/*log warning */},

        Debug: function(){/*log debug*/}

    }

    使用:jQuery.log.Error();

    jQuery.foobar={ /*do foobar*/}

    使用:jQuery.foobar();

    以上的方法等同于使用 jQuery. extend ()

    jQuery. extend = {

        log: {    Error:function(){/*log error*/},

        Warning: function(){/*log warning */},

        Debug: function(){/*log debug*/}

    },

        foobar:function(){/*do foobar*/}

    }

    使用:

    jQuery.log.Error();

    jQuery.foobar();

    2、添加实例方法,扩展jQuery.fn

    jQuery.fn=jQuery.prototype

    如:jQuery.fn.showMessage=function(){

    alert(“message!!”)}

    使用:$(“#div1”).showMessage();

    l       this是对当前jQuery对象的引用

    l       使用each迭代当前对象

    l       插件方法必须返回一个jQuery对象

  • 相关阅读:
    chrome/edge 自签名证书造成浏览器无法访问
    linux 下 取进程占用内存(MEM)最高的前10个进程
    总结记录一下我对YZ数据中台指标相关平台的理解感悟与思考
    史上最全之微信群发拼手气红包测试用例
    vue使用filterBy,orderBy实现搜索筛选功能
    前端处理防抖和节流
    箭头函数()=>{}与function的区别
    html不用任何控件上传文件
    Java必备知识--线程池
    Java必备知识--日志框架
  • 原文地址:https://www.cnblogs.com/linzheng/p/1853560.html
Copyright © 2011-2022 走看看