js设置元素宽度

JavaScript07

js设置元素宽度,第1张

变量没什么问题的,你看看,这个s有没有值,是不是加载js时,还没到body那儿,也就计算不出客户端的宽度。以下是具体实现代码:

具体公式是:

var  s = document.body.clientWidth

document.getElementById("body1").innerHTML=s

document.getElementById("body1").style.width="200px"

这个问题我自然想到过,所有时时都把S 是值显示出来了,S是有效的数字型的变量。

并没有getElementByClassName()这个函数,只有getElementsByClassName(),Element后面有个s,这个返回来是多个节点的集合(因为class名有可能匹配到多个),假设只有1个元素用这个class名,那么要改变宽度可以:

var a=document.getElementsByClassName("a")

a[0].style.width="500px"

望采纳,谢谢

(1)dom.style.width/height 获取dom元素内联样式中设定的width,height

(2)dom.currentStyle.width/height 获取dom元素渲染后的width,height,只支持IE

(3)window.getComputedStyle(dom).width/height 浏览器渲染后的元素宽,兼容性更好

(4)dom.getBoundingClientRect().width/height/left/top/right/ 计算一个元素的绝对位置(相对于视窗左上角),它能拿到元素的left、top、right、bottom、width、height

Element.getBoundingClientRect() - Web API 接口参考 | MDN