我是Javascript新手,试图编写一个函数来改变某些文本的颜色,但是“this”会一直返回为undefine,并且不会更改文本颜色。 下面是代码,我非常感谢一些帮助。Javascript:带有“this”的函数undefined
<h1>
<ul><div class="info" id="info" onclick="this.style.color= '#9DC8BA'">INFO
</div></ul>
<ul><div class="menu" id="menu" onclick="test1()"<!--this is where the problem is-->MENU</div></ul>
这里是JavaScript的
function test1() {
this.style.color= '#9DC8BA';
}
您是否得到了解决方案? – Amy 2014-10-09 06:29:34
将'= test1()'更改为'= test1(this)',并将'function test1()'更改为'function test1(div){div.style.color ='#CCC'}'。 – MrROY 2014-10-09 06:33:55
您的标记无效,DIV不能成为UL的子项。在非严格模式下,* this *永远不会被定义。如果没有在调用中设置,或者通过* bind *,它将默认为全局(浏览器中的窗口)对象。控制台可能抱怨* window.style *未定义。 – RobG 2014-10-09 07:14:56