我可以在 Javascript 中为我创建的对象创建自定义事件吗?

2024-04-09

假设我有一个带有返回自身的成员函数的对象:

/* -- Object 1 -- */
function Object1(){
    this.me      = new Image(10,10);
    this.me.src  = "someImgUrl.jpg";
    this.publish = function(){
        return this.me;
    }
}

生产中:

var Obj1 = new Object1();
document.body.appendChild( Obj1.publish() );

现在,假设我想创建一个在调用对象的publish() 方法时但在返回图像之后触发的事件(类似于“onPublished()”事件)。例如,将图像尺寸更改为 100x100。我将如何创建它,以及我将在哪里“附加”它?

如果我说得不够清楚,请告诉我。这是我能想到的最简单的演示。


一个简单的例子:

function Object1() {
    'use strict';

    this.me = new Image(10, 10);
    this.me.src = "someImgUrl.jpg";
    this.publish = function() {
        if (typeof this.onPublish === "function") {
            setTimeout(this.onPublish, 1);
        }

        return this.me;
    };
}

var Obj1 = new Object1();
Obj1.onPublish = function() {
  // do stuff
};

Obj1.publish();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以在 Javascript 中为我创建的对象创建自定义事件吗? 的相关文章

随机推荐