为什么这不适用于JS? getElementById()。style.width + = 40 +" px&#34 ;;

时间:2015-06-28 05:58:11

标签: javascript html5 css3 dom

我试图写一个速记方法getElementById()。style.width + = 40 +" px&#34 ;;通过JavasScript改变DOM中的元素宽度,但它不起作用。 有任何可行的解决方案吗?

2 个答案:

答案 0 :(得分:2)

如果document.getElementById(id).style.width返回"10px"
那么document.getElementById(id).style.width += 40 + "px"将是 "10px40px"

答案 1 :(得分:2)

无法进行速记分配。但你应该尝试以下方法:

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>