jQuery(js)获取文字宽度(显示长度)示例代码


Posted in Javascript onDecember 31, 2013

今天遇到了获取文字宽度的问题,查了很久,终于在一个国外网站上找到了方法,但是不能直接使用,于是修改了一下,成功使用到了项目中,在这里分享给大家。

首先在body标签最后添加一个子标签:

<span id="ruler">test</span>

然后添加相应的css代码:
#ruler { 
visibility: hidden; 
white-space: nowrap; 
font-size: 24px; 
}

接下来直接在String的原型中添加获取文字宽度的函数,在js代码中加入以下代码即可:
String.prototype.visualLength = function() 
{ 
var ruler = $("#ruler"); 
ruler.text(this); 
return ruler[0].offsetWidth; 
}

最后在需要获取文字宽度的地方调用即可,举个例子:
var text = "test"; 
var len = text.visualLength();

主要思路是添加一个隐藏的标签,每次对该标签赋值后,通过获取该标签的长度来获取文字宽度。需要注意的是,只有已经被添加到DOM中的标签才能获取长度。

如果大家觉得对自己有帮助的话,还希望能帮顶一下,谢谢:)

Javascript 相关文章推荐
JQueryiframe页面操作父页面中的元素与方法(实例讲解)
Nov 19 Javascript
HTML页面登录时的JS验证方法
May 28 Javascript
js中不同的height, top的区别对比
Sep 24 Javascript
jquery判断输入密码两次是否相等
Apr 22 Javascript
easyui combotree加载静态数据问题(选不上)解决方法
Dec 26 Javascript
js实现字符全排列算法的简单方法
May 01 Javascript
微信小程序 选项卡的简单实例
May 24 Javascript
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
Sep 20 jQuery
Three.js 再探 - 写一个微信跳一跳极简版游戏
Jan 04 Javascript
8 个有用的JS技巧(推荐)
Jul 03 Javascript
vue cli4下环境变量和模式示例详解
Apr 09 Javascript
js实现mp3录音通过websocket实时传送+简易波形图效果
Jun 12 Javascript
js判断字符长度以及中英文数字等
Dec 31 #Javascript
checkbox全选所涉及到的知识点介绍
Dec 31 #Javascript
用js+iframe形成页面的一种遮罩效果的具体实现
Dec 31 #Javascript
js类式继承的具体实现方法
Dec 31 #Javascript
利用javascript判断文件是否存在
Dec 31 #Javascript
jquery实现checkbox全选全不选的简单实例
Dec 31 #Javascript
屏蔽IE弹出&quot;您查看的网页正在试图关闭窗口,是否关闭此窗口&quot;的方法
Dec 31 #Javascript
You might like
openPNE常用方法分享
2011/11/29 PHP
php缓冲 output_buffering的使用详解
2013/06/13 PHP
跟我学Laravel之请求与输入
2014/10/15 PHP
php判断一个数组是否为有序的方法
2015/03/27 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
Zend Framework路由器用法实例详解
2016/12/11 PHP
this[] 指的是什么内容 讨论
2007/03/24 Javascript
JS调用页面表格导出excel示例代码
2014/03/18 Javascript
jquery uploadify 在FF下无效的解决办法
2014/09/26 Javascript
jquery.fastLiveFilter.js实现输入自动过滤的方法
2015/08/11 Javascript
基于javascript实现图片滑动效果
2016/05/07 Javascript
Bootstrap组件(一)之菜单
2016/05/11 Javascript
JS传参及动态修改页面布局
2017/04/13 Javascript
JS如何实现在页面上快速定位(锚点跳转问题)
2017/08/14 Javascript
详解从Vue.js源码看异步更新DOM策略及nextTick
2017/10/11 Javascript
JavaScript防止全局变量污染的方法总结
2018/08/02 Javascript
Vue.js轮播图走马灯代码实例(全)
2019/05/08 Javascript
vuejs element table 表格添加行,修改,单独删除行,批量删除行操作
2020/07/18 Javascript
[47:42]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python django集成cas验证系统
2014/07/14 Python
Python脚本实现代码行数统计代码分享
2015/03/10 Python
教你用Type Hint提高Python程序开发效率
2016/08/08 Python
对Python 文件夹遍历和文件查找的实例讲解
2018/04/26 Python
用Python调用win命令行提高工作效率的实例
2019/08/14 Python
Django3.0 异步通信初体验(小结)
2019/12/04 Python
Python创建空列表的字典2种方法详解
2020/02/13 Python
Django ModelForm组件原理及用法详解
2020/10/12 Python
基于OpenCV的网络实时视频流传输的实现
2020/11/15 Python
美国潜水装备、水肺潜水和浮潜设备商店:Leisure Pro
2018/08/08 全球购物
30年同学聚会邀请函
2014/01/25 职场文书
交通事故赔偿协议书范本
2014/04/15 职场文书
商务日语专业的自荐信
2014/05/23 职场文书
婚前财产协议书范本
2014/10/19 职场文书
企业财务经理岗位职责
2015/04/08 职场文书
90行Python代码开发个人云盘应用
2021/04/20 Python
MySQL池化框架学习接池自定义
2022/07/23 MySQL