我正在尝试制作一个更改外部CSS onclick中的margin-left属性的滑块。因此,我需要获取属性,然后设置新属性。

这是我的代码:

<style>
#divName
 {
  margin-left:20px;
 }
</style>

    <script language="javascript" type="text/javascript">

                var x = document.getElementById(divName);

            if (x.currentStyle)
            {
                var y = x.currentStyle[marginLeft];
            }
            else (window.getComputedStyle)
            {
                var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(marginLeft);
            }

                y = y + 20;

                document.getElementById(divName).style.marginLeft = y .'px';

    </script>


谢谢你的时间

最佳答案

在Javascript中,.运算符不连接字符串。

请使用+运算符:

document.getElementById(divName).style.marginLeft = y + 'px';


您可能还需要将marginLeft作为字符串而不是名称传递(除非作用域中有一个名为marginLeft且设置为"marginLeft"的变量):

var y = x.currentStyle["marginLeft"];


和:

var y = document.defaultView.getComputedStyle(x, null).getPropertyValue("marginLeft");

10-05 22:49