$(function(){ //默认为class为subStringBytes的obj截取字符串,且改class的title为要截取的字符串 subObj(); //注册浏览器大小调整监测事件,浏览器大小改变 从新截取 $(window).resize(function() { subObj(); }); }); //获取页面展现的文本 html原文本 width 文本展现局域的宽度 function getViewHtml(html,width) { var len = 0; var arr = html.split(""); var width_ = width-10; var html_ = ''; for (var i = 0; i < arr.length; i++) { if(width_-15.5>0){ //全角字符 if (arr[i].match(/[^x00-xff]/ig) != null){ html_ = html_+ arr[i]; width_ = width_ - 12; }else{//半角字符 html_ = html_+ arr[i]; width_ = width_ - 5.5; } }else{ width_ = width_ - 15.5; html_ = html_+ '...'; break; //结束循环 } } return html_; } function subObj(){ $(".subStringBytes").each(function(){ var width = $(this).parent().parent().width(); var html = $.trim($(this).attr('title')); var newHtml = getViewHtml(html,width); $(this).html(newHtml,width); }); }