我知道这个主题已经在类似的主题中讨论过,但是我能找到的解决方案都不能帮助我理解我遇到的问题。
这是我的简化类,通常是我定义它们。
BottomNav = function() {
this.init();
}
$.extend(BottomNav.prototype, {
init: function(){
this.insue = false;
$(".up").click($.proxy(function () {
var thisinuse = this.inuse;
if(this.inuse===false) {
this.inuse = true;
this.moveSlider('up');
}
},this));
},
moveSlider: function(d){
//some instructions
alert('move slider');
}
});
$(document).ready(function() {
new BottomNav();
});
在 FireBug 的点击事件里面的断点上 this.inuse 是未定义的!(这是我的问题),我的范围在手表上看起来不错(萤火虫的右侧面板),this.insue 应该是错误的- 抱歉我还不能发布图片!
我会很感激有人可能会帮助识别这种非常奇怪的行为。
我尝试了一些工作人员,例如将单击事件定义放在另一个函数中,但它也不起作用。我尝试了不同的绑定方式,但它也不起作用。
但是,下面的示例正在处理我制作的许多其他类。我可以从事件、效果访问类范围。