我可以在javascript和方法中链接属性吗?

时间:2013-10-13 09:00:21

标签: javascript

例如: 我想获得当前为黄色的身体的背景颜色并将其更改为蓝色:

   document.body.style.backgroundColor =  document.body.style.backgroundColor.replace("yellow", "blue");

它不起作用,为什么?那么如何使用javascript更改身体的背景颜色?主要问题是为什么我不能在.replace上使用document.body.style.backgroundColor方法

2 个答案:

答案 0 :(得分:1)

以下就足够了:

document.body.style.backgroundColor = 'blue';

在您的代码中,如果backgroundColor yellow,则会替换为blue。如果这是你需要的,我认为最好在替换之前使用toLowerCase()方法。

document.body.style.backgroundColor = 
document.body.style.backgroundColor.toLowerCase().replace("yellow", "blue");

您还可以使用正则表达式(如@nnnnnn所建议的)区分大小写替换为;

document.body.style.backgroundColor = 
document.body.style.backgroundColor.replace(/yellow/i, "blue");

答案 1 :(得分:0)

当然,你可以查看这个小提琴http://jsfiddle.net/thefourtheye/PexeK/

<body style="background-color:yellow">
    <input type="button" onclick="changeColor()" value="Change Color" />
</body>
<script>
    function changeColor() {
        document.body.style.backgroundColor = document.body.style.backgroundColor.replace("yellow", "blue");
    }
</script>