Extjs-实用工具 获取文本所占的高度和宽度 Ext.util.TextMetrices

公共部分

<body>
  <div id='text'></div>
  <div id='result'></div>
</body>
1.可以获取页面上文本所占的高度和宽度
<script type='text/javascript' defer>  
   	Ext.onReady(function() {
    	//createInstance创建一个实例
    	var metrics = Ext.util.TextMetrics.createInstance('text');
    	/*
    		getSize(),Ext自动得到id='text'这个标签上定义的CSS样式,并以此计算文本的大小
    		如果把我的坐标显示在标签中,坐标为宽61高18
    	*/
    	var size = metrics.getSize('我的坐标');
    	Ext.getDom('result').innerHTML += size.width + ',' + size.height;

	});
</script>
2.对于已经创建好的metrics实例
我们改变文本显示相关的CSS样式,可以使用bind(),它的参数是HTML上的标签,它将这个标签的CSS样式复制过来,用作计算下一次的计算文本的高度和宽度的依据
代码
<script type='text/javascript' defer>  
   	Ext.onReady(function() {
    	var metrics = Ext.util.TextMetrics.createInstance('text');
    	var size = metrics.getSize('我的坐标');
    	Ext.getDom('result').innerHTML += size.width + ',' + size.height;
    	//复制CSS相关样式
    	metrics.bind('result');
    	var size = metrics.getSize('复制了CSS相关样式');
    	Ext.getDom('result').innerHTML += size.width + ',' + size.height;
	});
</script>
3.设置文本最大宽度
<script type='text/javascript' defer>  
   	Ext.onReady(function() {
	    var metrics = Ext.util.TextMetrics.createInstance('result');
	    //设置文本最大宽度
	    metrics.setFixedWidth(100);
	    var size = metrics.getSize('我的坐标');
	    Ext.getDom('result').innerHTML += size.width + ',' + size.height + '<br />';
	});
</script>


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值