javascript - 如何在 IE 中获取输入元素的宽度?

标签 javascript internet-explorer

我不使用框架,我默认使用 JavaScript。

我需要知道输入文本元素的宽度,在我使用的优秀浏览器中:

width = document.defaultView.getComputedStyle(el, "").getPropertyValue('width');

但是在他妈的 Internet Explorer 中使用:

if (typeof el.currentStyle['width'] == "undefined" || el.currentStyle['width'] == 'NaN') {
  width = el.currentStyle['width'];
} else {
  width = null;
}

如果宽度由 css 或样式属性设置,则此方法有效,但如果大小是默认值(由大小属性设置或未设置)el.currentStyle['width'] 是未定义。

我需要知道没有设置属性的元素的宽度。

最佳答案

var elwidth= el.offsetWidth+'px';

关于javascript - 如何在 IE 中获取输入元素的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7589660/

相关文章:

javascript - Angularjs - 复选框 - 计算多个选定/未选定的项目

javascript - Internet Explorer 如何决定为新浏览器窗口跨越新进程?

css - 在 Explorer 和 Safari 中调整内容

internet-explorer - IE9-CSS3111 : @font-face encountered unknown error

css - 由于 CSS 问题,页面无法在 IE 和 Firefox 中正确显示

javascript - 如何获取两个列表,允许用户从每个列表中进行选择以创建两个新列表并将新列表中的数据组合成 redux 中的单个结果

javascript - 使用javascript在特定时间间隔播放视频并发布消息

javascript - 如何以编程方式填充使用 React 构建的输入元素?

javascript - 是否可以使 ChartJS 图表可滚动?

css - 与 AngularJS 绑定(bind)时,内联宽度在 IE 中不起作用