Javascript对象(改变颜色)

标签 javascript object namespaces mouseover mouseout

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

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>

最佳答案

您正在将 mouseOver/mouseOut 的结果分配给事件处理程序。这些函数没有结果,所以什么也没有发生。

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

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

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

关于Javascript对象(改变颜色),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48368319/

相关文章:

JavaScript - 切换功能

javascript - JavaScript 保证对象属性顺序吗?

javascript - 比较 2 个对象数组并过滤结果数组

与观察者的 PHP 对象组合?

javascript - Ext.Ajax.请求: External URL not working?

javascript - 不同网站上的不同用户代理

c++ - 定义命名空间::int类

PHP,命名空间中的新变量类

namespaces - flask restplus : unable to get flask_swagger_ui to work in conjunction with namespaces

javascript - DataTables 单个列搜索