Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么这在JS中不起作用??getElementById().style.width+;=40+&引用;“px”;;_Javascript_Html_Css_Dom - Fatal编程技术网

Javascript 为什么这在JS中不起作用??getElementById().style.width+;=40+&引用;“px”;;

Javascript 为什么这在JS中不起作用??getElementById().style.width+;=40+&引用;“px”;;,javascript,html,css,dom,Javascript,Html,Css,Dom,我正在尝试编写一个速记方法getElementById().style.width+=40+“px”;用于通过JavasScript更改DOM中的元素宽度,但它不起作用。 如果document.getElementById(id).style.width返回“10px” 然后document.getElementById(id).style.width+=40+“px”将 “10px40px”无法进行速记赋值。但您应该尝试以下方法: document.getElementById("div1")

我正在尝试编写一个速记方法getElementById().style.width+=40+“px”;用于通过JavasScript更改DOM中的元素宽度,但它不起作用。
如果
document.getElementById(id).style.width
返回
“10px”

然后
document.getElementById(id).style.width+=40+“px”

“10px40px”

无法进行速记赋值。但您应该尝试以下方法:

document.getElementById("div1").style.width = (parseInt(document.getElementById("div1").style.width) + 40) + "px";
注意:用适当的id替换[id]

完整示例代码:

<html>
<head>
<title></title>
<script type="text/javascript">
    function incrementWidth() {
        document.getElementById("div1").style.width = (parseInt(document.getElementById("div1").style.width) + 40) + "px";
    }
</script>
</head>
<body>
  <div id="div1" style="height:100px;width:40px;background-color:orange;"></div>
  <button onclick="incrementWidth();">INCREMENT</button>
</body>
</html>

函数incrementWidth(){
document.getElementById(“div1”).style.width=(parseInt(document.getElementById(“div1”).style.width)+40)+“px”;
}
增量

简而言之,将
+=
更改为
=
@daemonoft最不想要的是增加40px,这是由
+=
推断出来的。请输入完整的代码,我会检查并让您知道。这不起作用,因为您试图解析“10px”,它不能被解析为整数。事实上,据我所知,如果我们解析字符串,并且字符串有整数,那么parseint将提取整数部分。所以我用过了。啊,你说得对。我的错误;除非第一个字符是string.K buddy,否则它仍将解析它。祝你有美好的一天。