div.style.height div.height 区别

本文介绍了使用原生JavaScript和jQuery获取元素高度的方法,并对比了两者的不同之处。原生JavaScript仅能获取行内样式定义的高度,而jQuery则可以获取所有样式来源定义的高度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对,如果用原生的js:

document.getElementById("div1").style.height

获取高度的话只能获取内嵌(行内)样式,也就是写在元素上面的样式,意思你用:

document.getElementById("div1").style.height=“50px”;
或者在元素上:
<div style="height:50px"></div>

设置了之后就可以用了,但是没有设置之前取不到!


但是用jquery是可以取到的:

$("#div1").css("height");
或者:
$("#div1").height();

希望对你有帮助,望采纳!

追答
谢谢
这个问题可能是由于字体文件加载时还未完成,就已经开始绘制文字导致的。你可以尝试在字体文件加载完成后再进行绘制,或者在绘制之前先判断字体文件是否已经加载完成。 你可以修改代码如下: ``` let can = document.createElement('canvas'); can.width = 300; can.height = 350; var str1 = window.xyjVue.$waterStr; let cans = can.getContext('2d'); cans.rotate(-25 * Math.PI / 180); const fontSize = 16; const opacity = 0.4; // 设置字体 const font = new FontFace('CustomFont', 'url(http://hnxyjwork.kmdns.net:15002/wenYi/DIN-Light.woff)'); font.load().then(() => { document.fonts.add(font); // 添加字体 cans.fillStyle = `rgba(216, 216, 216, ${opacity})`; // 设置文本颜色和透明度 cans.font = `${fontSize}px CustomFont`; // 设置字体大小和名称 cans.fillText(str1, 0, 300); cans.fillText(str1, 0, 130); let div = document.createElement('div'); div.id = id; div.style.pointerEvents = 'none'; div.style.top = '0'; div.style.left = '0'; div.style.right = '0'; div.style.bottom = '0'; div.style.opacity = '1'; div.style.position = 'absolute'; div.style.zIndex = 7; div.style.background = 'url(' + can.toDataURL('image/png') + ') left top repeat fixed'; let img = new Image(); img.src = can.toDataURL('image/png'); img.onload = function () { div.style.background = `url(${img.src}) left top repeat fixed`; if (parentName) { document.querySelector(parentName).appendChild(div); } else { document.body.appendChild(div); } }; }); ``` 这样就可以在字体加载完成后再进行绘制,确保绘制出的文字使用的是正确的字体。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值