gpt4 book ai didi

javascript - 在js中的另一个类的主体中使用类的方法(具有this.variable形式的变量)

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

我有一个 Hotspot 类,它有一个方法,其中一个方法使用类变量 this.pano_id。类是这样的

function Hotspot(pano_id){
alert("First: " + pano_id);
this.pano_id = pano_id;
}

它有方法

Hotspot.prototype.Hotspots = function (){
alert(this.pano_id);
};

现在我已经在其他文件中创建了一个类的实例,如下所示

var hotspot = new Hotspot(pano_id);
TweenLite.to(clear_pano[pano_num].material.materials[i], time, {opacity: 1, ease: Expo.easeOut, onComplete: hotspot.Hotspots});

它正在创建类对象,然后调用 Hostpots 方法,其中我使用了 this.pano_id,但这似乎不起作用,因为它会警告未定义。我尝试在控制台上打印 this ,它是 TweenLite 对象的类对象。有什么方法可以使用 this.pano_id 吗?

最佳答案

它不起作用,因为 hotspot.Hotspots 是在不同的上下文(TweenLite 对象)中调用的。将其包装到匿名函数中并显式调用 hotspot.Hotspots:

var hotspot = new Hotspot(pano_id);
TweenLite.to(clear_pano[pano_num].material.materials[i], time, {
opacity: 1,
ease: Expo.easeOut,
onComplete: function() {
hotspot.Hotspots();
}
});

关于javascript - 在js中的另一个类的主体中使用类的方法(具有this.variable形式的变量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30702695/

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