一段神奇的代码,宽度显示为0?_html/css_WEB-ITnose

nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">无标题文档function showMsg(){   document.getElementById("textfield").value=document.getElementById("textfield").width;}      

登录后复制

直接把代码搞成HTML代码运行下,宽度竟然显示为0,何解?

回复讨论(解决方案)

document.getElementById(“textfield”).width
--》
document.getElementById(“textfield”).style.width

document.getElementById(“textfield”).width
--》
document.getElementById(“textfield”).style.width

这个时候显示的是 100px;而不是100这个数字。

function showMsg(){   var x=document.getElementById("textfield").style.width;   var y=x.split("px");   document.getElementById("textfield").value=y[0];}

登录后复制登录后复制登录后复制

function showMsg(){   var x=document.getElementById("textfield").style.width;   var y=x.split("px");   document.getElementById("textfield").value=y[0];}

登录后复制登录后复制登录后复制

切割字符串我当然知道;问题是第二种办法是获取的样式,毕竟原生接口里可以直接获得宽度,为什么打印出来是0?

function showMsg(){   var x=document.getElementById("textfield").style.width;   var y=x.split("px");   document.getElementById("textfield").value=y[0];}

登录后复制登录后复制登录后复制

切割字符串我当然知道;问题是第二种办法是获取的样式,毕竟原生接口里可以直接获得宽度,为什么打印出来是0?

因为你写的不对呗,正确的写法楼上@zpjshiwo77已经给出了,是document.getElementById(“textfield”).style.width,这是内联式css获取的方法

document.getElementById(“textfield”).width
--》
document.getElementById(“textfield”).style.width

这个时候显示的是 100px;而不是100这个数字。

parseInt(document.getElementById(“textfield”).style.width);

 您老看看行不

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3106015.html

(0)
上一篇 2025年3月29日 09:09:24
下一篇 2025年3月29日 09:09:28

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论