Javascript对象(更改颜色)

时间:2018-01-21 15:18:28

标签: javascript object namespaces mouseover mouseout

当我用鼠标悬停在文本上时,我正试图让文本“测试”改变颜色。我正在使用命名空间,我似乎无法弄清楚它为什么不起作用。有人有任何建议吗?谢谢。

var $MinNamespace = {}; 
$MinNamespace.mouseOver = function() {

        document.getElementById("text").style.color = "blue";
    }

$MinNamespace.mouseOut = function() {

        document.getElementById("text").style.color = "black";
    }
document.getElementById("text").onmouseover = $MinNamespace.mouseOver();
document.getElementById("text").onmouseout = $MinNamespace.mouseOut();

<div id="text" style="font-size:100px;">Test</div>

1 个答案:

答案 0 :(得分:1)

您正在将mouseOver / mouseOut的结果分配给事件处理程序。这些功能没有结果,所以没有任何反应。

代码必须如下所示(注意每行末尾缺少括号)。

document.getElementById("text").onmouseover = $MinNamespace.mouseOver;
document.getElementById("text").onmouseout = $MinNamespace.mouseOut;

以这种方式使用它,您将函数而不是相同函数的返回值分配给事件处理程序。