日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jquery实战--定宽

發布時間:2023/12/13 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jquery实战--定宽 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家有沒有遇到過一個問題,就是一個列表,或是一段文字過多時,截取多余的部分用省略號,好吧,證明你實力的時候到了,我下面先分解一下方法,再用插件寫出來,首先我們說的是,用到的第一個方法,就是判斷一個字符串 多少個字節。

function lengthB(str){var num=0,len =str.length;if(len){for(i =0; i<len;i++){if(str.charCodeAt(i)>255){num+=2;}else{num+=1; }}}else{return 0;}return num; }

lengthB,這個方法,是返回str的字節數,charCodeAt(i),返回字符的ascii碼值,>255,為中文,就是2個字節,否則,為英文一個字節。

測試看看

var num =lengthB("test多少個字節"); alert(num);

第二個重點來了,傳入參數,str(被截取的字符串),length(定寬的寬度),最后返回截取的截取的字符串。

function substringB(str , length){var temp="",num=0;_len = lengthB(str);if(_len){if(_len<length){return str;}else{for(var i =0; i<length; i++){if(num>=length){break;}if(str.charCodeAt(i)>255){num+=2;temp+=str.charAt(i);}else{num+=1;temp+=str.charAt(i);}}return temp;}}else{return null;}}

第三步:終極方法,相比第二個方法,多了第三個參數,默認是“...”

function fixedWidth(str,length,char){var str = str.toString();if(!char){var char ="..."} var num = length - lengthB(str);if(num<0){str = substringB(str,length-lengthB(char))+char;}return str; }

注意,返回的str,要把char的字節數減掉哦。

下面來封裝一下插件哦,這里我做的是全局的,(大家試下jquery對象打方法封裝插件。下節我再公布)

(function($){$.extend($,{fixedWidth :function(str,length,char){var str = str.toString();if(!char){var char ="..."} var num = length - lengthB(str);if(num<0){str = substringB(str,length-lengthB(char))+char;}return str;function lengthB(str){var num=0,len =str.length;if(len){for(i =0; i<len;i++){if(str.charCodeAt(i)>255){num+=2;}else{num+=1; }}}else{return 0;}return num;}function substringB(str , length){var temp="",num=0;_len = lengthB(str);if(_len){if(_len<length){return str;}else{for(var i =0; i<length; i++){if(num>=length){break;}if(str.charCodeAt(i)>255){num+=2;temp+=str.charAt(i);}else{num+=1;temp+=str.charAt(i);}}return temp;}}else{return null;}}}}); })(jQuery);

調用:

$(function(){var str1 = jQuery.fixedWidth("ddddddfagfa",7);alert(str1); });

?

轉載于:https://www.cnblogs.com/jine/archive/2012/08/07/2626006.html

總結

以上是生活随笔為你收集整理的jquery实战--定宽的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。