gpt4 book ai didi

Javascript/jQuery 对象编码问题

转载 作者:行者123 更新时间:2023-11-28 16:28:15 25 4
gpt4 key购买 nike

所以我在自定义 .js 文件中有一个新创建的 Javascript 对象,名为 EditableObject

function EditableObject(e, dv, i) {
this.element = e;
this.default_value = dv;
this.set = 0;
this.id = i;

alert(this.element.html());

this.element.click(function (event) {
alert(this.element.html());
});

}

在我的主页中,我有一个名为“field”的 div,其中包含文本“yeah”,如下所示:

 <div id="field">yeah</div>

在我的主页的脚本部分,我有:

var t = new EditableObject($("#field"), "value", 1);

页面加载时,会出现一个警告框,显示"is"。但是当我点击 div 时,我收到一条错误消息“this.element 未定义”。为什么会发生这种情况?

最佳答案

在您的 click 处理程序中,this 引用不同的范围(根据浏览器的不同,它将是 event 对象或当前功能)。您需要一个闭包来访问父作用域的 this:

var self = this;
this.element.click(function (event) {
alert(self.element.html());
});

关于Javascript/jQuery 对象编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7164993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com