js 怎样获取字体的宽度和高度 比如9pt这样大小的文字

js 怎样获取字体的宽度和高度 比如9pt这样大小的文字,第1张

字体的高宽,这个没法量的,因为好多字体,不同字符下大小不一样,比如 a 就是比 i 宽。

我猜你的问题应该是应该是获取一个具有特定字体,字号的字符串的宽度和高度吧。

你可以新建一个span标签,隐藏标签,把你的字符串放进去,赋上你想要的字体,字号。然后度量这个span的宽度和宽度就好了。这个span的宽高就是字符串的宽高。

<img id="_img" src="abcjpg" >

<script type="text/javascript">

function getWH(){

var id="_img";

var w=0;

var h=0;

// 具有较好的通用性

var real= documentgetElementById(id)height || documentgetElementById(id)styleheight || documentgetElementById(id)offsetHeight;

h=parseInt(real);

real= documentgetElementById(id)width || documentgetElementById(id)stylewidth || documentgetElementById(id)offsetWidth;

w=parseInt(real);

alert("w:"+w+" ; h:"+h)

}

getWH();

</script>

原生JS获取DIV的属性有两种方法

currentStyle和getComputedStyle,前者是兼容IE端的,后者也兼容W3C,两者内核不同,所以就有两种兼容的写法

如果只是单独的获取某个属性值可以这样写

objcurrentStyle[属性名];这种不兼容-webkit-内核的,

所以一般是封装成一个函数可以到处调用,而且不止针对某个属性值

function getStyle(obj,styleName){

if(objcurrentStyle){

return objcurrentStyle[styleName];

}else{

return getComputedStyle(obj,null)[styleName];

}

}

上面是封装好一个函数,可以直接调用

而目前的JQ库就不需要这么麻烦,可以直接

OBJCSS(属性名); 这样子就可以直接获取

测试可以

<script type="text/javascript">

function vbig(){

var ss=documentgetElementById("ss");

var imgs=ssgetElementsByTagName("img");

for(var i=0;i<imgslength;i++){

alert('W:'+imgs[i]width + 'H:'+imgs[i]height);

}

}

</script>

</body>

<div id="ss">

<img src="新建文件夹/images/3jpg" />

<img src="新建文件夹/images/01png" />

<img src="新建文件夹/images/main_17jpg" />

<img src="新建文件夹/images/s4jpg" />

</div>

<input type="button" value="变大" onclick="vbig()" />

网页可见区域宽: documentbodyclientWidth

网页可见区域高: documentbodyclientHeight

网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)

网页可见区域高: documentbodyoffsetHeight (包括边线的高)

网页正文全文宽: documentbodyscrollWidth

网页正文全文高: documentbodyscrollHeight

网页被卷去的高: documentbodyscrollTop

网页被卷去的左: documentbodyscrollLeft

网页正文部分上: windowscreenTop

网页正文部分左: windowscreenLeft

屏幕分辨率的高: windowscreenheight

屏幕分辨率的宽: windowscreenwidth

屏幕可用工作区高度: windowscreenavailHeight

屏幕可用工作区宽度: windowscreenavailWidth

alert(objstylewidth);改成 alert(documentdefaultViewgetComputedStyle(obj,null)['width']);

objstylewidth只能获得用style=‘’标签显示设置的样式,不能获得在样式文件中定义的样式,在火狐、谷歌等浏览器中用documentdefaultViewgetComputedStyle(obj,null)['width']能够获取到样式表中定义的样式,在ie下用的是objcurrentStyle['width']

以上就是关于js 怎样获取字体的宽度和高度 比如9pt这样大小的文字全部的内容,包括:js 怎样获取字体的宽度和高度 比如9pt这样大小的文字、我想用js获取一张图片的宽度和高度 请问怎么能获取 图片在<img>标签中、js怎么得到div宽度呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9429669.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存